Project: | Proparse Project |
Component: | Code |
Category: | bug report |
Priority: | minor |
Assigned: | Unassigned |
Status: | active |
&IF STRING( 0, "9" ) > "" &THEN &ELSEIF
We use a preprocessor that contains a 'normalized' proversion for simple compile time branches based on Progress version.
&GLOBAL-DEFINE PROVERSION-MAJOR (STRING(INTEGER(ENTRY(1, PROVERSION, ".":U)), "99":U))
&GLOBAL-DEFINE PROVERSION-MINOR (ENTRY(2, PROVERSION, ".":U))
&GLOBAL-DEFINE PROVERSION ({&PROVERSION-MAJOR} + ".":U + {&PROVERSION-MINOR})
&IF {&PROVERSION} > "10.1A" &THEN UseOE10Feature &ENDIF
&IF INTEGER( ENTRY( 1, PROVERSION, ".":U ) ) < 10 &THEN
&GLOBAL-DEFINE PROVERSION-ZERO 0
&ENDIF
&GLOBAL-DEFINE PROVERSION-MAJOR ( "{&PROVERSION-ZERO}":U + ENTRY (1, PROVERSION, ".":U ) )
&GLOBAL-DEFINE PROVERSION-MINOR (ENTRY(2, PROVERSION, ".":U))
&GLOBAL-DEFINE PROVERSION ({&PROVERSION-MAJOR} + ".":U + {&PROVERSION-MINOR})
Comments
Re: Format option of STRING function is not yet supported.
Hi Stefan, thank you for the very well written issue report.
If anybody has some starting point for the algorithm for implementing this, please let me know. In Proparse, it has to be implemented in C++ but that doesn't matter - an algorithm in abl or any other language would help.