Kbase P80900: Copy Record then Cancel Copy doesn't refresh Child SDO in SBO.
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  20/11/2004 |
|
Status: Unverified
FACT(s) (Environment):
Dynamics 2.1A
SYMPTOM(s):
Copy Record then Cancel Copy doesn't refresh Child SDO in SBO.
Copying a parent record using the Toolbar 'Copy' button blanks out any records displayed from a child SDO connected to the parent via foreign fields. If the Copy action is then cancelled with the 'cancel' button, the parent record is refreshed, but the records displayed from the child SDO are not. They remain blank.
CAUSE:
The foreign field values are not refreshed between the two SDO's. Known issue.
FIX:
Override 'cancelRecord' in the smartDataViewer super procedure to get the handle of the master SDO within the SBO, and publish dataAvailable to refresh the foreign field values. For example:
PROCEDURE cancelRecord :
RUN SUPER.
DEFINE VARIABLE h_SDO AS HANDLE NO-UNDO.
DEFINE VARIABLE h_SBO AS HANDLE NO-UNDO.
{get datasource h_SBO TARGET-PROCEDURE}.
{get masterDataObject h_SDO h_SBO}.
IF VALID-HANDLE(h_SDO) THEN
DO:
PUBLISH "dataAvailable" FROM h_SDO("DIFFERENT":U).
END.
END PROCEDURE.