Progress2XLS

  I'd like to introduce the progress2xls Report Convertor for MFGPro 8.5 / Progress 7.3 (And up). It takes a standard MFGPro report and turns it into a Excel File. It actually binds into the terminal program you are using, if you like. The program has several options to be considered.

Progress2XLS Can process any MFGPro report, it being:

  • Standard MFGPro Report
  • CVS
  • CVSMixed Report
  • Custom Report (Extra settings in ini file required)

Moved to SourceFOrge

SourceForge.net Logoprogress2xls, has got a new name and has move to sourceforge. It been renamed to Progress2XLS. This page will be updated shortly. The name change is due to an extention of the functionalty to include all progress reports, as long as the are standard reports. Of course CVS and Mixed CSV reports will still be included in the conversion process. The move to the new name means that most names in path's, ini files etc have changed as well. Normally I would not make such a big change in applications, but it's to much work to have too seperate sources for both names.

News 04-11-2004

  1. New version release 2.21 
    • Patch for Already Open Temp Files
    • Fix for Re-using Excel Instance and open Files
  2. New version release 2.10 
    • Major Rewrite
    • Fix for Date Handling
  3. Generalised version to include more progress applications besides MFGPro.
  4. Move to SourceForge Project under the name PROGRESS2XLS.
  5. The Next Version will be called PROGRESS2XLS and all directories will change to PROGRESS2XLS as well. For a preview download PROGRESS2XLS.zip instead. In the manual exchange every occurance of progress2xls with PROGRESS2XLS.
  6. New version release 1.22.6 
    • Patch for AIX misschien the -n option in echo
    • Re-using Excel Instance
    • CloseMacro Option.
  7. New version release 1.22.8 
    • Change to allow for more than 32000 Lines. 
    • Still need to figure out how to allow for more than 65000 Lines in Excel. 
    • Maybe splitting over multiple Worksheets.
  8. Fixes 1.99
    • Autmatic Language Recognition
    • Fixed Some Irritating Bugs
  9. Fixes 1.22.9
    • Change form background color
    • Fix Re-Use Excel Instance
    • Fix Multiple Report Instances
    • Fix Processing Empty Reports
    • Fix Error Handling
  10. Fixes in 1.22.10
    • Addition for .w reports
    • Fix for empty Reports
  11. First Release of Progress2XLS (Switch over today)
    • Modulairised design
    • Fix for .w reports
    • Fix for reports started from commandline
    • More than 32000 Lines Conversion
    • Extra Speed
  12. Second Release of Progress2XLS
    • MultiLanguage Support
    • MultiLocals Support
    • Date Conversion
    • Currency /Value Conversion
  13. Minor Update Progress2XLS
    • Handling CSV files

SCREENSHOTS


progress2xls processing Report


Resulting Excel Report including macro styling

Usage

  • progress2xls.exe "reportname" 
  • drop report on progress2xls.exe
  • Have you terminal program start progress2xls specifying the temp file it has created

Ini Files

progress2xls has two ini files. One in it's home directory and one on you central file server for you to maintain. Reports that progress2xls has not seen before are automatically added to the local ini file. When you make any changes to this local.ini file to make a specific report work differently and after veryfing this change does what it is supposed to do, copy the settings from you local file to the central file to make this report available for everyone.

For more information about the ini files and the possible settings look in the progress2xls.ini.instruction file

Connecting progress2xls to your Terminal Program

You will need a somewhat advanced terminal program to pull this one of. We are using Netterm and are quite happy with it. Netterm has the possibility to start a program and parse a file to it generate by the terminal application.They call it edit mode. Like transparent printing this sends the actual file to the client side without any user intervention. 

Server Side (MFGPro)

For this work you will need to add a printer to MFGPro (trmexcel for example) :

ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Printer Definition ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³      Output To: trmexcel                              Printer Type:          ³
³                                                                              ³
³    Description: start progress2xls                         Lines / Page: 0        ³
³      Max Pages: 0                                    Scroll Output: no       ³
³Device Pathname: /usr/bin/trmexcel                          Spooler: yes      ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Printer Control ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Initialize Command:                                                          ³
³                                                                              ³
³    Initialize Ctrl:                                                          ³
³                                                                              ³
³  80-Col Start Ctrl:                                                          ³
³                                                                              ³
³ 132-Col Start Ctrl:                                                          ³
³                                                                              ³
³         Reset Ctrl:                                                          ³
³                                                                              ³
³      Reset Command:                                                          ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

and call a little program /usr/bin/trmexcel containing:

Standard Unix
------------------------------
#!/bin/sh
echo -n "\033[5i"
cat $1
echo -n "\033[3i"
------------------------------ 
or on some platforms
------------------------------
#!/bin/sh
echo -n "ESC[5i"
cat $1
echo -n "ESC[3i"
------------------------------
or on AIX
------------------------------
#!/bin/sh
echo "\033[5i\c"
cat $1
echo "\033[3i\c"
------------------------------

You can not copy paste this program via a terminal program that actually support progress2xls, your terminal program will go into edit file mode :-) . Just type it ok. If you have a Unix version that does not provide a way to skip the line-end with echo then just do echo. progress2xls will remove the first line if empty.

Thank John for helping out with testing on AIX.

[Test this program by entering "/usr/bin/trmexcel filename.prn" after installing progress2xls.exe on your client and changing netterm.]

Server Side (File Server)

Installing progress2xls.exe version 2.21 on your central file server
  1. In this mail you will find one attachement named progress2xls.zip. 
  2. Create a new share on your file-server (for example progress2xls) 
  3. Connect to this share from you client (for example M:\) (Replace the M:\ in the rest of the instruction if you choose another letter) 
  4. Unpack progress2xls_shared.zip to this new share (creating two directories : progress2xls and progress2xls_Macros) 
  5. Edit m:\progress2xls\progress2xls.ini 
  6. CentralIniFile = M:\progress2xls\progress2xls.ini (Replace M: with the Letter you connected to in step 6, if you chose M: in step 6 don't edit anything) 
  7. ExcelDir = M:\progress2xls_Macros (Replace M: with the Letter you connected to in step 6, if you chose M: in step 6 don't edit anything

Client Side

  1. On every client connect to the progress2xls share of the file-server (for example M:\) 
  2. On every client create a new directory c:\download\progress2xls 
  3. On every client create a new directory c:\program files\progress2xls 
  4. Copy progress2xls.exe and progress2xls.ini from the file-server progress2xls share to you machine into c:\program files\progress2xls
  5. e.g. copy "m:\progress2xls\*.*" "c:\program files\progress2xls
  6. (You could use a login-script, so that progress2xls is automatically installed on all the clients when a user logs-on)


So far so good. We have now installed progress2xls. The only thing left is setting up Netterm to start progress2xls after receiving a file.

Setting up NetTerm for receiving files and starting progress2xls

  • Start Netterm
  • Goto Menu [Options] - [Global Settings]
    • Tab [General]
      • [Allow Program Calls] = yes
    • Tab [Applications]
      • [Edit Program] = C:\Program Files\progress2xls\progress2xls.exe

Sending files to you local Client (Using trmexcel) and make it into an Excel fileConnect to MFGPro

  • Go to a report you would like to print 
    • Type Printername : [trmexcel]

That's it. Now most reports in MFGPro should be able to be processed into Excel Files. There are some reports that still give problems, they can resolved however by changing some options in the central progress2xls file. Look in to progress2xls.ini.instruction file for more information. 

By the way after processing the file to excel, progress2xls will look in the progress2xls_macros directory for a excel file (.xls / .xlt) with the same name as the mfgpro program (nvsorp01.p) that created the report. If found it will be opened. If this file has a macro named progress2xls this macro will be started as well. This makes for a whole lot of extra options you can create yourself.

Visual Basic Sources are available as via CVS at SourceForge

Hope you like progress2xls,

Regards,

www.talon.nl

Download


Progress Developer's Webring
 

  $Date: 2007/11/18 09:52:54 $