6 Replies Latest reply on Sep 14, 2012 10:50 AM by Stephen Huston

    DDR doesn't always show when a script is called by another script

    mph

      Hi all,

       

      I'm trying to troubleshoot my db using DDR and am running into a problem where script1 may be called by script2, but when I go to look at the attributes for script1 I don't see anything in the "Scripts that use this script" section. Both script1 and script2 are in the same file. I'm using FileMaker Pro Advanced 11.0v3. Has anyone else run into this problem?

      Thanks!

        • 1. Re: DDR doesn't always show when a script is called by another script
          Stephen Huston

          I've done a lot of DDR work over the last couple of years, and have not encountered this problem on HTML-DDRs. Is there a chance there is a very similarly named script causing confusion?

           

          Try running a search of the HTML text for the script1 name to be sure it appears as a step in Script2.

           

          As long as both scripts are in the same file, I would expect the calling script to be listed if it is  really the same script referenced in the 2nd script.

           

          I found that cross-file linked scripts were better reported using a DDR analysis tool such as BaseElements on the XML-DDR, but I have not encountered the same-file missing link you report.

          • 2. Re: DDR doesn't always show when a script is called by another script
            mph

            Hi Stephen,

             

            Here's what I have:

             

            Script: Enter New MWO Detail* calls Script: Get Standard Operations for New MWO*

            The "Scripts used by this script" box includes Get Standard Operations for New MWO*

            Script: Get Standard Operations for New MWO* does not show anything in the "Scripts that use this script" box

            I ran the ddr on several different back-up copies from different dates, and always got the same result.

            This is just one of several instances.  On the other hand, most of the script references for this table are correct.  I did a search as you suggested and it confirms the situation above.  Since I didn't see any discussions about an issue like this in the forum, I assume I'm doing something unique that's causing the behavior. 

             

            I did take a look at BaseElements and it looks like a valuable tool - I've seen it referenced a number of times in the discussions.  If I can't figure out what's going on with the ddr, would BaseElements catch that type of issue?

            Thanks for your help!

            • 3. Re: DDR doesn't always show when a script is called by another script
              Stephen Huston

              Just curious about the apparent error -- do the script step details in the DDR for the Script "Enter New MWO Detail" show the script call to the other script as a step, with the script name correct? Is there an extra file reference in the FileMaker Data Sources list to this same file which could be used for calling this script even though it is local, possibly tricking the DDR into thinking its an external script call?

               

              I would expect BaseElements (BE) to better catch this type of script reference, as it usually handles cross-file references as well as local file script references. You have to run the DDR on the full file system to obtain the cross-file stuff.

               

              BE has a free download and 30-day trial period, and any report on the DDRs done within that 30 days is still available in BE as read-only reports even after the 30-day trial. You can't beat that price for trying it out, and still getting some reference use out of it after the trial ends.

              1 of 1 people found this helpful
              • 4. Re: DDR doesn't always show when a script is called by another script
                nickorr

                mph,

                 

                There are quite a few limitations in the HTML DDR, and this is just one of them : if you reference a script in another file, it will show which scripts are being called in the other file, but not which scripts from other files are calling this one.

                 

                The source data is there in the XML DDR ( which is what the HTML version is based on ), but the transforms used in generating the HTML don't include these cross links.

                 

                And yes, all of this info is in BaseElements, I made sure of it

                 

                Cheers,

                Nick

                1 of 1 people found this helpful
                • 5. Re: DDR doesn't always show when a script is called by another script
                  mph

                  Stephen - I double-checked and the script step details in the DDR for the "Enter New MWO Detail" script do show the script call to the "Get Standard Operations for New MWO" script.  I double-checked the data sources for this file (that was a good suggestion!), and don't have duplicate or extra file references.  It looks like this behavior is related to something specific to my setup.

                  Nicholas - Yes, I know of the limitation involving referencing a script in another file; in this case both scripts live in the same file.

                   

                  Since I've been developing and maintaining this db for 16+ years (starting with fmp 2), and it's grown into 9 files with 73 tables, I was hoping I could use the DDR to start archiving elements that are OBE.  As Nicholas points out, there are limitations that make the DDR a good tool for getting db design info, but maybe not so good for getting definitive links between elements with enough confidence to archive elements that seem to be unused.

                   

                  As you both suggest, I'm looking into getting a copy of BaseElements, which looks like it's the right tool for the job.  Thanks for your help!

                  • 6. Re: DDR doesn't always show when a script is called by another script
                    Stephen Huston

                    BaseElements allowed me to remove nearly 2000 obsolete scripts, fields, layouts, and other misc stuff which had accumulated in an old undocumented system of over 60 files (170 tables) without missing any real links. In my opinion, it is far superior to the FM-native DDR output, and well worth using for any system that needs a cleanup.

                     

                    [ Disclaimer: a Satisfied BE user, with no stake in the BE product. ]