Apr 14

Edit Document Fields 4.2 will be 5.0

I have been working out the final bugs of the next Edit Document Fields.  I was planning on making some small improvements, but as usual it grew.  Here are some of the new/updated features:

  • Use profile document to store the last field edited
  • Use profile document to store the last data type for each data field
  • Added new data type of Formula
  • Switched from UNID to NoteID to allow more documents to be updated (~500)
  • Password Convert, Password is now Password Set
  • Two pass update - gathers the documents before any documents are updated, eliminates updated documents twice and ensures all documents are processed.
  • Use of Eval function instead of checking the data type selected for every document

I am using the Formula data type more and more.  The options are endless. There will be some examples coming.

 

The good news that even with two passes the speed is the same as the previous version!!!

It is coming very soon.

Apr 09

One Teamstudio Icon 1.1

With the release of Teamstudio for Notes Edition 21 there is now 9 icons to choose from. Wait with the addition of Teamstudio Script Browser (which is free!!!) there is 10. My original only had 8 icons and I would foregt which icon is which. So this code will combine the 10 icons into one, which reduces bad clicks (at least for me). I have something like this:

Teamstudio has also made some name changes in the last version or two so both names will show to help with the switch. The other annoying thing about the implementation of Teamstudio’s tools is that they lock Designer while they are open. In one of Teamstudio’s beta release they were testing the ability to launch a tool in Modal mode which would not lock Designer. This was very nice feature, but it was not implemented because it had some bugs according to them. The one Teamstudio icon that I implemented uses the modal implementation and I never had a problem. I started using a profile document to store the last selected option. The profile document will allow each database to have its last selection remembered. This might seem like a little over kill but there will be some constancy between all Smiley Tools: Edit Document Fields and Toolbar Functions in the near future. For this article I have split up tde code into two sections: Teamstudio Modal, Teamstudio Standard. Use what ever fits your needs.

Teamstudio Modal (allows the use of Notes/Domino)

REM {One Teamstudio Icon Modal by Chad Schelfhout.}; 
REM {Visit http://www.chadsmiley.com/OneTeamstudioIcon for the latest updates}; 
 
REM {Constants}; 
TeamstudioLastSelection := "TeamstudioLastSelection"; 
ProfileName := "ChadSmiley Tools"; 
DefaultSelection := "CIAO! Modal"; 
 
REM {Get last selection for this database}; 
TeamstudioSelection := @GetProfileField( ProfileName ; TeamstudioLastSelection ; @UserName ) ; 
 
Option := @Prompt( kCancelList; "Select Option" ; "What would you like to do:" ; @If( TeamstudioSelection = "" ; DefaultSelection ; TeamstudioSelection ) ; @Explode( "Analyzer Modal:Configurator Modal:CIAO! Modal:Delta Modal:Profiler Modal:Design Manager (Librarian) Modal:Librarian (Design Manager) Modal:Snapper:Form Snippet:Validator (Linkchecker) Modal:Linkchecker (Validator):Modal:Script Browser" ; ":" ) ) ; 
 
REM {Set last selection for this database}; 
SetProfileField( ProfileName ; TeamstudioLastSelection ; Option ; @UserName ) ; 
 
REM {Execute the correct option.}; 
File := "Nothing"; 
@If( 
   Option = "Analyzer Modal" ; @Command(xecute "ndean.exe"; @DbColumn ("NAME":"Nocache";"") ) ; 
   Option = "Configurator Modal" ; @Command(xecute "nconfy.exe";@DbColumn ("NAME":"Nocache";"") ) ; 
   Option = "Script Browser" ; @Set( File ; @DbColumn( "TMS":"NoCache" ; "CLSVIEW") ) ; 
   Option = "Delta Modal" ; @Command(xecute "ndelta.exe";@DbColumn("NAME":"Nocache";"") ) ; 
   Option = "CIAO! Modal" ; @Command(xecute "nciao.exe";@DbColumn("NAME":"Nocache";"") ) ; 
   Option = "Profler Modal" ; @Command(xecute "nprofile.exe";@DbColumn("NAME":"Nocache";"") ) ; 
   Option = @Explode( "Librarian (Design Manager) Modal" : "Librarian (Design Manager) Modal" ; ":" ) ; @Command(xecute "nlibr.exe";@DbColumn("NAME":"Nocache";"") ) ; 
   Option = "Snapper" ; @Set( File ; @DbColumn( "TMS":"NoCache" ; "SNAP") ) ; 
   Option = "Form Snippet" ; @Command( ileImport "Form Snippet";"") ; 
   Option = @Explode( "Linkchecker (Validator) Modal" : "Validator (Linkchecker) Modal" ; ":" ) ; @Command(xecute "nvalidator.exe";@DbColumn("NAME":"Nocache";"") ) ; 
   "" ); 
 
REM {Only Analyzer and Validator open a database after execution.}; 
@If ( File != "Nothing" & Option = @Explode("Analyzer Modal" : "Linkchecker (Validator) Modal" : "Validator (Linkchecker) Modal" ; ":" ); 
   @Do( 
      @PostedCommand( ddDatabase File ); 
      @PostedCommand( ileOpenDatabase File ) 
   ); 
"" )

Teamstudio Standard

REM {One Teamstudio Icon Standard by Chad Schelfhout.}; 
REM {Visit http://www.chadsmiley.com/OneTeamstudioIcon for the latest updates}; 
 
REM {Constants}; 
TeamstudioLastSelection := "TeamstudioLastSelection"; 
ProfileName := "ChadSmiley Tools"; 
DefaultSelection := "CIAO!"; 
 
REM {Get last selection for this database}; 
TeamstudioSelection := @GetProfileField( ProfileName ; TeamstudioLastSelection ; @UserName ) ; 
 
Option := @Prompt( kCancelList; "Select Option" ; "What would you like to do:" ; @If( TeamstudioSelection = "" ; DefaultSelection ; TeamstudioSelection ) ; @Explode( "Analyzer:Configurator:CIAO!:Delta:Profiler:Design Manager (Librarian):Librarian (Design Manager):Snapper:Form Snippet:Validator (Linkchecker):Linkchecker (Validator):Modal:Script Browser" ; ":" ) ) ; 
 
REM {Set last selection for this database}; 
@SetProfileField( ProfileName ; TeamstudioLastSelection ; Option ; @UserName ) ; 
 
REM {Execute the correct option.}; 
File := "Nothing"; 
@If( 
   Option = "Analyzer" ; @Set( File ; @DbLookup( "TMS" : "NoCache"; "DEAN" ) ); 
   Option = "Configurator" ; @Set( File ; @DbColumn( "TMS" : "NoCache"; "STAR" ) ) ; 
   Option = "Script Browser" ; @Set( File ; @DbColumn( "TMS":"NoCache" ; "CLSVIEW") ) ; 
   Option = "Delta" ; @Set( File ; @DbColumn( "TMS" : "NoCache"; "DIFF" ) ) ; 
   Option = "CIAO!" ; @Set( File ; @DbColumn( "TMS" : "NoCache"; "CIAO" ) ) ; 
   Option = "Profiler" ; @Set( File ; @DbColumn( "TMS" : "NoCache"; "PROFILE" ) ) ; 
   Option = "Profler Modal" ; @Command(xecute "nprofile.exe";@DbColumn("NAME":"Nocache";"") ) ; 
   Option = @Explode( "Design Manager (Librarian):Librarian (Design Manager)" ; ":" ) ; @Set( File ; @DbColumn( "TMS" : "NoCache"; "LIBR" ) ); 
   Option = "Snapper" ; @Set( File ; @DbColumn( "TMS":"NoCache" ; "SNAP") ) ; 
   Option = "Form Snippet" ; @Command( ileImport "Form Snippet";"") ; 
   Option = @Explode( "Linkchecker (Validator)" : "Validator (Linkchecker)" ; ":" ) ; @Set( File ; @DbColumn( "TMS" : "NoCache";"LINKCHK" ) ) ; 
   "" );
 
REM {Only Analyzer and Validator open a database after execution.}; 
@If ( File != "Nothing" & Option = @Explode( "Analyzer" : "Linkchecker (Validator)" : "Validator (Linkchecker)" ; ":" ); 
   @Do( 
      @PostedCommand( ddDatabase File ); 
      @PostedCommand( ileOpenDatabase File ) 
   ); 
"" )