$PBExportHeader$uo_taskdamt_spi.sru forward global type uo_taskdamt_spi from nonvisualobject end type end forward global type uo_taskdamt_spi from nonvisualobject end type global uo_taskdamt_spi uo_taskdamt_spi forward prototypes public function integer uf_save (s_eb_cusamt s_import[], ref string arg_msg, boolean ifcommit) private function string pf_errmsg () end prototypes public function integer uf_save (s_eb_cusamt s_import[], ref string arg_msg, boolean ifcommit);int rslt = 1 rslt = 0 PopulateError(999, '需要子类实现') arg_msg = pf_errmsg() GOTO ext ext: IF ifcommit THEN IF rslt = 1 THEN COMMIT; ELSE ROLLBACK; END IF END IF return rslt //s_taskdamt arg_s_bd //uo_taskdamt uo_ware //uo_ware = Create uo_taskdamt //FOR i = 1 To UpperBound(s_import) // FOR j = 1 To UpperBound(l_s_amt) // IF l_s_amt[j].scid = s_import[i].scid & // And l_s_amt[j].cussptid = s_import[i].cusid & // And l_s_amt[j].part = s_import[i].part & // And l_s_amt[j].billdate = s_import[i].billdate & // And l_s_amt[j].assign_emp = s_import[i].assign_emp & // And l_s_amt[j].dscrp = s_import[i].dscrp THEN EXIT // NEXT // // IF j > UpperBound(l_s_amt) THEN // l_s_amt[j].billid = 0 // l_s_amt[j].scid = s_import[i].scid // l_s_amt[j].cussptid = s_import[i].cusid // l_s_amt[j].part = s_import[i].part // l_s_amt[j].billdate = s_import[i].billdate // l_s_amt[j].assign_emp = s_import[i].assign_emp // l_s_amt[j].dscrp = s_import[i].dscrp // END IF // // k = UpperBound(l_s_amt[j].arg_s_mx) + 1 // l_s_amt[j].arg_s_mx[k].scid = l_s_amt[j].scid // l_s_amt[j].arg_s_mx[k].billid = l_s_amt[j].billid // l_s_amt[j].arg_s_mx[k].printid = k // l_s_amt[j].arg_s_mx[k].relid = s_import[i].relid // l_s_amt[j].arg_s_mx[k].reltaskcode = s_import[i].reltaskcode // l_s_amt[j].arg_s_mx[k].damt = s_import[i].damt // l_s_amt[j].arg_s_mx[k].dscrp = s_import[i].mxdscrp // l_s_amt[j].arg_s_mx[k].accountsid = s_import[i].accountsid // l_s_amt[j].arg_s_mx[k].billamt = s_import[i].billamt // l_s_amt[j].arg_s_mx[k].itemid = s_import[i].itemid // l_s_amt[j].arg_s_mx[k].takeamt = s_import[i].takeamt // l_s_amt[j].arg_s_mx[k].reltakeamt = s_import[i].reltakeamt // l_s_amt[j].arg_s_mx[k].realmoneyid = s_import[i].realmoneyid // l_s_amt[j].arg_s_mx[k].realrate = s_import[i].realrate // l_s_amt[j].arg_s_mx[k].billtype = s_import[i].billtype // l_s_amt[j].arg_s_mx[k].banktypeid = s_import[i].banktypeid // l_s_amt[j].arg_s_mx[k].reldamt = s_import[i].reldamt //NEXT // //FOR i = 1 To UpperBound(l_s_amt) // IF uo_ware.Save(l_s_amt[i],arg_msg,False) <> 1 THEN // rslt = 0 // GOTO ext // END IF //NEXT end function private function string pf_errmsg ();String rslt rslt = Error.Text + ' at ' + Error.ObjectEvent + ' in ' + Error.Object + ' line ' + String(Error.Line) RETURN rslt end function on uo_taskdamt_spi.create call super::create TriggerEvent( this, "constructor" ) end on on uo_taskdamt_spi.destroy TriggerEvent( this, "destructor" ) call super::destroy end on