[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference iosg::all-in-1_v30

Title:*OLD* ALL-IN-1 (tm) Support Conference
Notice:Closed - See Note 4331.l to move to IOSG::ALL-IN-1
Moderator:IOSG::PYE
Created:Thu Jan 30 1992
Last Modified:Tue Jan 23 1996
Last Successful Update:Fri Jun 06 1997
Number of topics:4343
Total number of notes:18308

2576.0. "AUTOREPLY " by ANGLIN::HARRIS (user vicious) Thu Apr 15 1993 23:37

    ALL-IN-1 2.4, VMS 5.5-2
    
    my customer wants to have an AUTOREPLY send everytime mail is sent to 1
    particular ALL-IN-1 account.
    
    is this possible on an individual account basis?
    
    	ann
T.RTitleUserPersonal
Name
DateLines
2576.1A horrible hack....IOSG::PYEGraham - ALL-IN-1 Sorcerer's ApprenticeFri Apr 16 1993 11:2012
    As you know, the REPLYHIST.DAT file is used to record addresses who
    have had an auto-reply sent to them.
    
    As a result of researching various bugs in this area, it appears that
    the image only uses SYSPRV to write to this file. So if you create an
    empty REPLYHIST.DAT file in the user's account, but don't give it any
    SYSTEM Write access, then the image can't record who it's already
    replied to....
    
    Or you could use ALL-IN-1 Personal Assistant.
    
    Graham
2576.2\\ ?ANGLIN::HARRISuser viciousFri Apr 16 1993 17:3327
    thanks graham!
    
    i think this will work.  but (of course) i have a couple of questions.
    on the form EMARPY there is an XOP (POSTEMARPY) that resets the
    protections.
    
    since it would only be the 1 account that needs the autoreply ro always
    be sent, i'd like to put an .IF statement in the POSTEMARPY that says
    if the user is XXX, then set the protections this new way (no W), else 
    set the protections the old way (with W).
    
    here is the ND from the POSTEMARPY.  i know it needs some double \\
    somewhere, but i'm not sure where.
    
    Thanks - ann
    
    ;;~~POSTEMARPY~~;;                                                            
    
    .if oa$user eqs "HARRIS, ANN" then
     get #curdoc="oa$curmes"\
     get oa$dcl="$set prot=(S:r,O:R,W:R) replyhist.dat\
     else                                                                              
     GET #CURDOC="OA$CURMES"\                                                      
    GET OA$DCL="$SET PROTECTION=W:RWE REPLYHIST.DAT"\                             
    GET #A= PROFIL.MAIL_REPLY[OA$USER]\                                           
    GET OA$FUNCTION='GET OA$DCL="SET PROTECTION=W:RE ' #A '"'                     
    
2576.3OASS::VALDEZ_CA smile is the same in any languageFri Apr 16 1993 23:2420
Hi Ann,

Use double backslashes (\\) when you want multiple statements to occur within 
the .IF (if in named data).  You don't need any backslashes before an ELSE.  
So, try something like

    .if oa$user eqs "HARRIS, ANN" then
     get #curdoc="oa$curmes"\\
     get oa$dcl="$set prot=(S:r,O:R,W:R) replyhist.dat"
     else                                                                      
     GET #CURDOC="OA$CURMES"\\                                                  
    GET OA$DCL="$SET PROTECTION=W:RWE REPLYHIST.DAT"\\                          
    GET #A= PROFIL.MAIL_REPLY[OA$USER]\\                                        
    GET OA$DCL="SET PROTECTION=W:RE " #A 

Also, just to be safe, start the line that begins with the ELSE with an extra 
space.

Cindy

2576.4You must have already customised this...IOSG::PYEGraham - ALL-IN-1 Sorcerer's ApprenticeMon Apr 19 1993 12:1712
    Fortunately I can rely on Cindy to sort out the backslashes, 'cos I'm
    not very good at that sort of thing!
    
    I was just thinking that you'd do this as a one-off hack from DCL on
    the required account.
    
    Actually, if you already have some code to set the protections, then I
    think it must be a customisation, since it's not in the standard
    product as far as I can see. It's something I hope we can add in the
    future, since I consider this feature to be a bug!!
    
    Graham
2576.5almost there!ANGLIN::HARRISuser viciousWed Apr 21 1993 17:1039
    thanks for the \\ help cindy!
    
    grahame - the POSTEMARPY was added per a DSN article by the customer a
    few years ago.
    
    in looking into this somemore... i found that the REPLYHIST.DAT file is
    deleted and recreated each time the AR in selected by the user.  when
    the REPLYHIST.DAT is created its given a prot of S:RWED, O:RWED.  in
    looking at a trace, i don't see this being done.  my code to change the
    protections is shown in the ND, but not being executed.
    Where does the REPLYHIST.DAT get it protections when being created?
    	
    	Thanks - Ann
    
    part of the trace follows:
    
    ![IO]     Deleting file REPLYHIST.DAT
    ![FLOW]   Form RPLYHS opening, Library:
    APPL$DISK:[ALLIN1.LIB_ENGLISH]OAFORM.FLB
    !               ;
    ![IO]     Opening RPLYHS, File: OA$REPLYFILE, Class: DATA, Mode: CREATE
    ![IO]     Closing RPLYHS, File: OA$REPLYFILE
    ![FUNC]   Function: CLOSE_PRIOR, Cmd line:
    ![A1LOG]  Entry: %OA-I-LOGFUN, Function: CLOSE_PRIOR
    ![FORM]   Form DOCSEL closing
    ![FUNC]   Function: XOP, Cmd line: "~~POSTEMARPY~~"
    ![A1LOG]  Entry: %OA-I-LOGFUN, Function: XOP            
    "~~POSTEMARPY~~"
    ![SYMBOL] Symbol: "~~POSTEMARPY~~", Value: ~~POSTEMARPY~~
    ![FUNC]   Function: OA$SCP_DISPATCH, Cmd line: .IF OA$USER EQS "ANN,
    TEST" THEN
    !               GET #CURDOC="OA$CURMES"\ GET OA$DCL="$SET
    PROTECTION=(S:R,O:,W:R
    !               ) REPLYHIST.DAT"\ ELSE GET #CURDOC="OA$CURMES"\GET
    OA$DCL="$SET
    !               PROTECTION=W:RWE REPLYHIST.DAT"\GET
    #A=PROFIL.MAIL_REPLY[OA$USER
    !               ]\GET OA$FUNCTION='GET OA$DCL="SET PROTECTION=W:RE ' #A
    '"'
2576.6In the BLISS....IOSG::PYEGraham - ALL-IN-1 Sorcerer's ApprenticeWed Apr 21 1993 19:1714
    There's no entry form mapping the reply history file (although it's
    trivial to create one) the internal data structures (FNT and FDT) that
    are built from an entry form are hardwired into the mail code. All of
    this is a long way of saying that the creation (and almost certainly,
    but I haven't checked) protection of the .DAT file is done inside the
    BLISS module that implements the MAIL AUTO_REPLY function.
    
    The delete and recreate each time is just a cheap way of getting an
    empty file.
    
    You'll have to add extra ND to set the protections after the new
    version is created.
    
    Graham
2576.7so close...ANGLIN::HARRISuser viciousWed Apr 21 1993 20:5914
    thanks for the BLISS input grahame.  i thought that's what was the
    cause.  
    
    well, after changing the protections around, i'm finding that if
    REPLYHIST.DAT does NOT have W:RWE (at least the W part), the sender of
    a message to an account with an AUTOREPLY selected gets an error when
    trying to open the receiver's REPLYHIST.DAT
    
    someone else has suggested that i create a private FLB with my own
    autoreply form and scripts.  i think this might be the way to go - now
    if i only had the time....
    
    	thanks for all the help - Ann