Re: [?]Fourgen:form:update:detail-lineitem-delete:4gl explanation
Posted in 1995
Huddleston, Joe (huddles@emspo01.hasting.com) wrote: : what happens is this: : fourgen keeps the detail information in an array. when you delete a row : from the detail section, it is removed from the array only. finally, when : you exit input and save the changes, lld_delete() is called to delete *all* : detail rows (that match the join criteria for the header/detail : relationship). then, all detail rows are reinserted. this caused us some : problems when we first started using fourgen, because some of our detail : tables had a serial column, and depended on the value. : -joe- : (huddles@hasting.com) You should use add-on-detail way of deleting rows. In add-on-details deleted rows are marked and only those are deleted from database. You have to use some triggers and .ext files to accomplish that. Another problem is to get a serial number from insert cursor in lld_add(). I haven't found a simple workaround. One way is not to use serials, another is to rewrite lld_add(). -- Zdeno Miklas e-mail: ash@softec.sk SOFTEC spol. s r. o. phone : 42-7-273805 ext.128 Kutuzovova 23 fax : 42-7-272537 831 03 Bratislava SLOVAKIA