Wednesday, May 29, 2013

Setting up Auto Archive For Various Mailboxes in Apple Mail

Apple mail is a simple and awesome email client. Ain't it!!! Now unlike other clients like MS Outlook, Apple email doesnot directly provide you the AutoArchive settings to archive ur emails from various mail boxes onto Your local drive. However the process in Apple email to set this up is a simple and direct one. Here is the Step by Step process to do so.

Say, I have multiple accounts configured in my Apple email and I want to set up auto archive for one of the Mailbox Accounts (Wipro in this example).

  • First I right-click(two finger click on Mac) on Inbox under the mailbox section in the left hand panel and select New Mailbox.




  • On the panel That Pops Up,  I give the new mailbox a name "Archive" and make sure that "On My Mac" is selected as the location of the mailbox. 



  • Now Since I want to have Archived mails from my Wipro Account's various folders like "Inbox" and "Sent" go to different archive folders on My Mac to give it a organized look, I build a subfolder mailbox called "Wipro Archive" under "Archive" and then, I build two subfolder mailboxes called "Inbox" and "Sent" under "Wipro Archive". The below snapshots show step by step build process of the organized archive mailbox structure.





  • Finally, my organized tree Archive mailbox folder structure looks something like this. 


  • Now to Manually Archive My emails from Wipro Account Server Mailboxes to these local folders, I can just go and select the emails in bulk or individually, right click and move to these local mailboxes. 
  • To Set up AutoArchive of old emails or emails qualifying certain conditions, I set up my own "Rules". For this, I go to Mail--->Preferences--->Rules and set up a couple of rules here: One for directing the old received emails from Inbox of Wipro Account to Inbox of Wipro Archive and another for directing the old sent emails from the Sent folder of Wipro Account to the Sent folder of Wipro Archive as shown in the snapshots below.






 Thats the end of this simple step by step write up of this process. Happy emailing and Happy Auto Archiving.



Thursday, May 16, 2013

Reformatting SearchFor(ISRSUPC) output Report


You know how useful the search for (ISRSUPC) utility is. Now if You want to use the output report of the utility in a layout format with detail records ready to be used as a input to a program or downloaded to spreadsheet for analysis purpose, then You can use the following Job which uses DFSORT to do the same for You.

//JS010 EXEC PGM=ISRSUPC,PARM=(SRCHCMP,IDPFX,XREF,NOSUMS)            
//NEWDD    DD DSN=HLQ1.HLQ2.DATA.PDS,                              
//            DISP=SHR                                            
//OUTDD    DD DSN=&&TEMPFILE,DISP=(,PASS),SPACE=(CYL,(5,5),RLSE)        
//SYSIN    DD *                                                  
SRCHFOR  'SEARCH STRING 1'
SRCHFOR  'SEARCH STRING 2'
SRCHFOR  'SEARCH STRING 3'
.
.
SRCHFOR  'SEARCH STRING N'                                                
/*                                                                
//JS020 EXEC PGM=SORT                                       
//SYSOUT   DD SYSOUT=*                                            
//SORTIN   DD DSN=&&TEMPFILE,DISP=SHR                                    
//SORTOUT  DD SYSOUT=*,RECFM=FB                                  
//SYSIN    DD * 
  OMIT COND=(01,1,ZD,EQ,1,OR,03,15,CH,EQ,C'MEMBER   LINE-#') 
  INREC IFTHEN=(WHEN=GROUP,BEGIN=(2,14,CH,EQ,C'----- STRING="'), 
           PUSH=(134:15,20))                                              
  SORT FIELDS=(134,20,CH,A)                                             
  OUTFIL BUILD=(134,20,2,132), 
  OMIT=(2,14,CH,EQ,C'----- STRING="',OR,1,133,CH,EQ,C' ')
/*

The significant thing to be noted here is the sort control statements esp. the use of IFTHEN/WHEN=GROUP statement where in we consider all the records following a header line to be a part of the group and using the PUSH keyword in the INREC, we add a particular field value of the header record to all the records in the group.



Rexx - Concatenate Number of Datasets with a Pattern and Read Data

Suppose You have a List of PS Datasets with a naming Pattern. In Your Rexx Program You want to read the data of the concatenated list of Datasets the same way as You would do by giving a list of DD DSN= statements with the same DDName in a JCL. To Achieve this, You can use the LMDINIT and LMDLIST ISPEXEC services in Your Rexx Program.


The data set list service (LMDLIST) generates and uses an internal list of data set names associated with a unique data set list ID (dslist ID) obtained from the LMDINIT service.
The names in the internal list can be passed to a dialog with data set information (if specified) using two options:

  • The LIST option returns the information one name at a time through the function pool variables.
  • The SAVE option writes the names and information to a data set.

The internal list is not dynamic. Data sets created after the invocation of the LMDINIT service will not added to the list. To update the list to include new data set names, use the LMDFREE service to release the current dslist ID and reissue the LMDINIT and LMDLIST services, or reissue the LMDINIT and LMDLIST services using a different dslist ID.

The example program is shown below.


/* REXX */                                                              
CONCLIST=""                                                              
ADDRESS ISPEXEC                                                          
/* N.B: DATASET NAME TEMPLATE NOT BOUNDED BY SINGLE QUOTES */            
"LMDINIT LISTID(LISTID) LEVEL(AIW.AIWXR*.**.DATA*)"                            
DATASET=""                                                              
DO FOREVER                                                              
   OK="4 8";"LMDLIST LISTID("LISTID") DATASET(DATASET)"                  
   IF RC>0 THEN DO                                                      
      LEAVE                                                              
   END                                                                
   CONCLIST=CONCLIST" '"STRIP(DATASET,"B")"'"                            
END                                                                  
CONCLIST=SUBSTR(CONCLIST,2)                                              
"LMDFREE LISTID("LISTID")"                                              
ADDRESS TSO                                                              
/* N.B: DATASET NAMES NOW BOUNDED BY SINGLE QUOTES */                    
"ALLOC FI(TEMP) DA("CONCLIST") SHR REUSE"                                
"EXECIO * DISKR TEMP (OPEN STEM REC. FINIS)"                            
"FREE FI(TEMP)"                                                          
DO R=1 TO REC.0                                                          
   SAY STRIP(REC.R,"T")                                                  
   END                                                                  
EXIT  

SAY THE INPUT FILES ARE AS BELOW:

USER       AIW.AIWXR1.DATE1.DATA  
000001 DATA1 LINE 1                                                            
000002 DATA1 LINE 2                                                            
000003 DATA1 LINE 3                                                            

USER       AIW.AIWXR5.DATE2.DATA
000001 DATA2 LINE 1                                                            
000002 DATA2 LINE 2                                                            
000003 DATA2 LINE 3                                                            

USER       AIW.AIWXR4.DATE3.DATA                           
000001 DATA3 LINE 1                                                            
000002 DATA3 LINE 2                                                            
000003 DATA3 LINE 3                                                            

When running the Output we get: 

DATA1 LINE 1 
DATA1 LINE 2 
DATA1 LINE 3 
DATA2 LINE 1 
DATA2 LINE 2 
DATA2 LINE 3 
DATA3 LINE 1 
DATA3 LINE 2 
DATA3 LINE 3 




                                

Popular

Featured

Three Months of Chadhei