IDMS

 View Only
Expand all | Collapse all

Logging IDMS IDD and ADSC Dialog changes

  • 1.  Logging IDMS IDD and ADSC Dialog changes

    Posted May 21, 2014 02:08 PM

    When modifying idd process or ADSC dialogs, is there a logging process where one can review when a dialog has been modified other than the last time as indicated in the LOAD MODULE. I have a request from clients that want to be able to idenfiy when a dialog has been modified in a given time frame (whether 1 year or 2 as an example). I am familiar with the IDD commands but am wanting to find whether there is another way of determining changes



  • 2.  RE: [Application Developer Issues] Logging IDMS IDD and ADSC Dialog changes

    Posted May 21, 2014 02:49 PM
    In IDD you can issue DIS PROG DDDDDDDD. Where DDDDDDDD= the name of the dialog, that will show you many things including the date last modified/compiled.



    William M. Allen, Jr.

    President/CEO

    ARCH Consulting Associates, LTD.

    5605 Ivygate Lane

    Charlotte, NC 28226-8196

    (704) 641-0296 Phone

    (704) 543-0158 Fax



    From: CA IDMS IUA EIUA Global User CommunityMessage Boards [mailto:CommunityAdmin@communities-mail.ca.com]
    Sent: Wednesday, May 21, 2014 2:08 PM
    To: mb_message.15281477.117596364@myca-email.ca.com
    Subject: [Application Developer Issues] Logging IDMS IDD and ADSC Dialog changes



    When modifying idd process or ADSC dialogs, is there a logging process where one can review when a dialog has been modified other than the last time as indicated in the LOAD MODULE. I have a request from clients that want to be able to idenfiy when a dialog has been modified in a given time frame (whether 1 year or 2 as an example). I am familiar with the IDD commands but am wanting to find whether there is another way of determining changes

    Posted by:northerndba
    --
    CA Communities Message Boards
    117598904
    mb_message.15281477.117596364@myca-email.ca.com <mailto:mb_message.15281477.117596364@myca-email.ca.com>
    https://communities.ca.com


  • 3.  RE: [Application Developer Issues] Logging IDMS IDD and ADSC Dialog changes

    Posted May 21, 2014 03:02 PM

    I am aware of the DIS PROG command. However this only gives me the last time is was compiled. I am looking for a history of all dates when it was compiled,



  • 4.  Re: [Application Developer Issues] RE: [Application Developer Issues] Loggi

    Posted May 21, 2014 03:08 PM
    You would only get that from the journal images. The information is not
    available in the dictionary. You only get the date/time created and
    last modified.

    Laura Rochon
    Hera Evolution inc.


  • 5.  Re: [Application Developer Issues] RE: [Application Developer Issues] Loggi

    Posted May 21, 2014 03:08 PM
    You would only get that from the journal images. The information is not
    available in the dictionary. You only get the date/time created and
    last modified.

    Laura Rochon
    Hera Evolution inc.


  • 6.  RE: Re: [Application Developer Issues] RE: [Application Developer Issues] L

    Posted May 21, 2014 03:16 PM

    Thanks for the answers provided - is there an easy way to extract this information from the journals? I am familiar to a small degree to most utilities and "Extract Journal" does not appear to provide me with what I am looking for. All I require is a list of  the date/times of when a dialog and/or process was compiled/updated. This is to be used for audit purposes.



  • 7.  Re: [Application Developer Issues] RE: Re: [Application Developer Issues] R

    Posted May 21, 2014 03:37 PM
    You need to use JREPORT 8, and tailor it to retrieve just want you want,
    but the report won't be very nice. What I personally use is Journal
    Reporter from ISP.

    Contact me offline if you want more info on the product.
    Laura Rochon
    Hera Evolution inc.
    On 21/05/2014 3:16 PM, CA IDMS IUA EIUA Global User CommunityMessage
    Boards wrote:
    >
    Thanks for the answers provided - is there an easy way to extract this
    information from the journals? I am familiar to a small degree to most
    utilities and "Extract Journal" does not appear to provide me with
    what I am looking for. All I require is a list of the date/times of
    when a dialog and/or process was compiled/updated. This is to be used
    for audit purposes.

    Posted by:northerndba
    --
    CA Communities Message Boards
    117607118
    mb_message.15281477.117604578@myca-email.ca.com
    https://communities.ca.com


  • 8.  RE: [Application Developer Issues] Re: [Application Developer Issues] RE: R

    Posted May 21, 2014 05:22 PM
    SOME THOUGHTS …
    Without a general idea of when a previous update was made you would need to go thru EVERY day’s journals for that CV (is there only one CV that could have updated the dialog?) I would guess you could limit your search to record type 051 in area (APPLDICT?).DDLDML

    If the program was generated/complied/updated in LOCAL mode you will NEVER find the date of update using the journals

    A possible easier alternative? If you take backups of the dictionary and/or corresponding load area – restore a current one (to different dsn of course) – plop those dsn into a local mode IDMSDDDL job (display prog xxxxxxx) and see if the dates are different – keep working back in time until you find a change

    Chris hoelscher
    Technology Architect | Database Infrastructure Services
    Technology Solution Services
    [Description: Description: cid:image001.png@01CD13D7.1A57CAF0]
    123 East Main Street |Louisville, KY 40202
    choelscher@humana.com
    Humana.com
    (502) 476-2538 – office
    (502) 714-8615 - blackberry
    Keeping CAS and Metavance safe for all HUMANAty

    The information transmitted is intended only for the person or entity to which it is addressed
    and may contain CONFIDENTIAL material. If you receive this material/information in error,
    please contact the sender and delete or destroy the material/information.


  • 9.  RE: [Application Developer Issues] Re: [Application Developer Issues] RE: R

    Posted May 21, 2014 05:22 PM
    SOME THOUGHTS …
    Without a general idea of when a previous update was made you would need to go thru EVERY day’s journals for that CV (is there only one CV that could have updated the dialog?) I would guess you could limit your search to record type 051 in area (APPLDICT?).DDLDML

    If the program was generated/complied/updated in LOCAL mode you will NEVER find the date of update using the journals

    A possible easier alternative? If you take backups of the dictionary and/or corresponding load area – restore a current one (to different dsn of course) – plop those dsn into a local mode IDMSDDDL job (display prog xxxxxxx) and see if the dates are different – keep working back in time until you find a change

    Chris hoelscher
    Technology Architect | Database Infrastructure Services
    Technology Solution Services
    [Description: Description: cid:image001.png@01CD13D7.1A57CAF0]
    123 East Main Street |Louisville, KY 40202
    choelscher@humana.com
    Humana.com
    (502) 476-2538 – office
    (502) 714-8615 - blackberry
    Keeping CAS and Metavance safe for all HUMANAty

    The information transmitted is intended only for the person or entity to which it is addressed
    and may contain CONFIDENTIAL material. If you receive this material/information in error,
    please contact the sender and delete or destroy the material/information.


  • 10.  RE: Re: [Application Developer Issues] RE: [Application Developer Issues] L

    Posted May 21, 2014 10:09 PM

    Was it Codd or Date who said, and I need to paraphrase a bit here, that " ... the database is in the journal file, the physical database is just the optimised path to the current values" - or something to that effect?

    I know this doesn't help - but the comment is particularly true of IDD which does not include a built in (historical) log of changes.

    Cheers - GaryC smiley



  • 11.  RE: Re: [Application Developer Issues] RE: [Application Developer Issues] L

    Posted May 22, 2014 11:41 AM

    I want to thank everyone who responded to my request. I will take was has been provided and pass it on to our clients to see if they wish to pursue any of what was provided.



  • 12.  RE: Re: [Application Developer Issues] RE: [Application Developer Issues] L

    Broadcom Employee
    Posted May 22, 2014 04:19 PM

    Analyzing journals for current historical information would be the only way and is most likely not practical...

    But CA does have a solution which would satisfy this need going forward. Endevor/DB will log changes made to entities in a  monitored dictionary recording information such as who changed what entity, what program did the change, date/time, and CCID (if implemented). No "deltas" are captured however we have heard of mechanisms customers have put into place to move changed entities into Endevor SCM to accomplish this.

    Endevor/DB can be installed as an add-on into a current IDMS environment to provide ongoing control and history...



  • 13.  RE: Logging IDMS IDD and ADSC Dialog changes

    Posted May 23, 2014 03:19 PM

    Going back in time is difficult, for how long do you actually keep your journals, and then reading the journals and getting the information you need is not actually easy.

    Going forward, you can create a Culprit report, or Cobol program that reads through the dictionary daily and then attaches the programs, modules, records etc to a class with a date and a user id.  Here is Culprit source that does that for MODULEs. but it can be easily adapted to PROGRAMs and other entities.

    //SYSIN     DD *                            
     DATABASE DICTNAME=SYSDIRL DBNAME=APPLDICT
     PARAM=LIST                                 
     PROFILE RELEASE=6 EX=E PARMLIB=STANDARD    
     IN 1500 DB SS=IDMSNWKA                     
    $                                           
     PATH01 MODULE-067                          
    =MACRO * (                                  
    //       DD *                               
    * '05/19/14'                                
    * '05/20/14'                                
    * '05/21/14'                                
    * '05/22/14'                                
    * '05/23/14'                                
    //       DD *                               
    * )                                         
    =MEND                                                  
     01510001 'MODIFY MODULE '                             
     01510015 MOD-NAME-067                                 
     01520005 'INCLUDE PRODMIGR IS '                       
     01530005 ''''                                         
     01530006 O-DATE                                       
     01530015 O-USER                                       
     01530023 '''.'                                        
    $                                                      
     010    O-USER         '        '                      
     010    O-DATE         '        '                      
    $                                                      
     017    $                                              
     017    IF DATE-CREATED-067 EQ (&&1 &&2 &&3 &&4 &&5) 100
     017    IF DATE-LU-067      EQ (&&1 &&2 &&3 &&4 &&5) 100
     017    DROP                                           
     017100 $                                              
     017    MOVE DATE-CREATED-067 TO O-DATE     
     017    MOVE PREP-BY-067      TO O-USER     
     017    IF DATE-LU-067 EQ ' ' 110           
     017    MOVE DATE-LU-067      TO O-DATE     
     017    MOVE REV-BY-067       TO O-USER     
     017110 $                                   
     017    TAKE                                
    $                                           
    // 

     

    The part that has
    // DD *
    * '05/19/14'
    * '05/20/14'
    * '05/21/14'
    * '05/22/14'
    * '05/23/14'                               
    is set up that way as it would allow you to have a program that creates a file with the dates you want to extract from, this particular report takes 5 dates as input.

    Then you need to set up a CLASS in the dictionary, in this case,
    CREATE CLASS PRODMIGR
    ATTRIBUTES ARE AUTOMATIC PLURAL
    DELETION LOCK IS ON.

    The output from the Culprit is IDD statements that can be sent into an IDMSDDDL compiler and exeuted.  In this case the statement looks like this:
    MODIFY MODULE
    INCLUDE PRODMIGR IS
    '05/23/14 userid  '
    You can manipulate the date to be formatted as yy/mm/dd for easier sorting.

    When looking at the module, you can then see when it was updated and by who.
    You could of course also store the information in a database instead of in the dictionary.  If a module is deleted you will of course lose the information.