We deploy WebServices to IIS via PowerBuilder. This is a migration project (EA Server (PB 12.5) => IIS (PB2017 R2 Build 1769).
In the application framework the usage of assigning the row data to a nonvisual object is quite often used.
During the migration process (EA Server (PB 12.5) => IIS (PB2017 R2 Build 1769) we are facing problems with datawindow's dot notation.
Some Code here:
jn_cst_vor_umsatz_data lnv_data
lnv_data = adsv_data.Object.Data[ll_row]
//------------------------
// Some debugLog to check NULL vs. 0
decimal ldec_umsa_umsa_blz_pa
ldec_umsa_umsa_blz_pa = adsv_data.GetItemDecimal ( ll_row , "umsa_umsa_blz_pa" )
This.of_DebugLog(SCRIPT_NAME, "umsa_umsa_blz_pa (via GetItemDecimal): " + This.of_StringNull(string(ldec_umsa_umsa_blz_pa)))
This.of_DebugLog(SCRIPT_NAME, "umsa_umsa_blz_pa (via object assignment): " + This.of_StringNull(string(lnv_data.idec_umsa_umsa_blz_pa)))
//------------------------
For values (that are set) the result is as expected:
2019-06-26 09:53:21 | DEBUG | jn_cst_vor_umsatz_fk | of_Validate(jn_ds) | 1 | umsa_umsa_blz_pa (via GetItemDecimal): 36050105 |
2019-06-26 09:53:21 | DEBUG | jn_cst_vor_umsatz_fk | of_Validate(jn_ds) | 1 | umsa_umsa_blz_pa (via object assignment): 36050105 |
But for NULL Values
2019-06-26 10:23:26 | DEBUG | jn_cst_vor_umsatz_fk | of_Validate(jn_ds) | 1 | umsa_umsa_blz_pa (via GetItemDecimal): NULL |
2019-06-26 10:23:26 | DEBUG | jn_cst_vor_umsatz_fk | of_Validate(jn_ds) | 1 | umsa_umsa_blz_pa (via object assignment): 0 |
So my questions are:
- Has anyone seen this error/behavior before?
- Is dot notation (object assignment) not supported for IIS WebService Deployment?
- Is that a bug in PB2017 R2 Build 1769?
- If this is a bug, was it already fixed in PB 2017 R3?
I added a small webservice application that shows the behavior. The Method of_check1 shows 0 vs. NULL in my current Environment (Remark: There is no Chance for me to update my environment)
Any comments and hints are welcome!
Arnd
NULL Values are not beeing set when assigning rowdata to an nvo.
I am gonna write an extra function in all nvo data classes to fix that missing / buggy feature.
No hug for the datawindow today ;-)