Presentation on theme: "2009 Spring Conference Luis I. Gomez. Integrating Tools for BR Dev SourceSafe Live vs. development system ExamDiff Pro MyEdit Code templates."— Presentation transcript:
2009 Spring Conference Luis I. Gomez
Integrating Tools for BR Dev SourceSafe Live vs. development system ExamDiff Pro MyEdit Code templates Data driven programming PRINTER.SYS and PRINTER.CLS
Microsoft Visual SourceSafe Provides source control to project. Multi programmer environment ○ Lock program during development Release versions are assigned ○ 3-5 released per week. CM 7.1F.010 is an example release. ○ Each compile increments the last number. The letter is changed periodically, usually when something significant has happened. The main version number is changed annually.
Microsoft Visual SourceSafe Documenting program changes Description of changes on check in Second project maintained (source) ○ Review all the changes on a monthly basis. Catch mistakes. Allows for additional documentation. Automatically generate release notes ○ [See Collection-Master Release Notes folder.]
Microsoft Visual SourceSafe Disaster recovery Complete copies of every version ○ Every program ○ Configuration template ○ Report template Prior versions ○ Revert to old copy. ○ Compare to any prior instance. ○ Easily identify the “new code.”
Microsoft Visual SourceSafe Tight BR integration PROC CO PROC CI PROC ST PROC UndoCo [See SourceSafe folder.]
Development System Process to release new code. Write the program in dev system. Thoroughly test the application. After passing, move to the production system. Again, test the application. Publish the changes to customers.
ExamDiff Pro When you need to compare files or folders, no tool is more powerful and easy-to-use than ExamDiff Pro! Migrate source code from dev system. Compare dev to live system. Easily move sections of code. Manually enhance code. Reload source and save.
MyEdit and Notepad++ They each have a lot to offer. Easy to view color coding. Built in error checking provides hints, warnings and errors. Easily cut and paste from other programs. Built in “Intelli-Sence” provides auto completion and other automation. Powerful debugger allows easy “GO STEP” with a simple GUI interface.
MyEdit and Notepad++ When coding, we use line # That allows us to write code without worrying about line numbers. Program will not load until we remember to fix up the line numbers. Use “refactor” to renumber the lines.
MyEdit Fantastic viewer for SourceSafe Replacement viewer for most file types Automatically view “.wb” files Compare two program versions ○ built in or external DIFF programs
Code Templates “Cut & Paste” Routines to merge or proc code Use LIBRARY functions. ○ Older programs use LOCAL functions. ○ Use a “wrapper LOCAL function.” [See Printer_Selection.brs.] “Wrapper” may have very few parameters. -Variables within the “Wrapper” are global to the program. ‘Updateable region” comments to easily identify the start and end of code. Later, we can easily replace the “wrapper function” with an enhanced version. [See Region folder.]
DATA Driven Programming Use data files Instead of “hard coding” programs Menus – [See MENU_Sample folder.] Reports – [See Template_Sample folder.] File Layouts – [See SQL_Sample folder.] SQL variable names Combined with arrays Provide clear programming variables Very easy to later enhance the database See Gabriel’s SQL-IO (not included). See CONTEXT.WB (not included).
PRINTER.SYS and PRINTER.CLS We at CLS often refer to this as NWP. Single report template Will print to any device ○ (Text, HTML, PCL, NWP) NWP.CHM Detailed documentation on how to use these codes [See Printing folder.] [See NWP.CHM.]