>CLEAR >CLOSE DATABASES ALL >SET ASSERTS ON > >getOptionID = 1 >getMakeID = 22 >getModelIDs = [_1_2_3] >oCa = CREATEOBJECT([cadealeropts]) >IF oCa.CursorFill() > BROWSE NORMAL > IF NOT TABLEUPDATE(1, .t., oCa.Alias) > AERROR(aaaa) > CLEAR > DISPLAY MEMORY LIKE aaaa > ENDIF > >ELSE > AERROR(aaaa) > CLEAR > DISPLAY MEMORY LIKE aaaa >ENDIF > > > > >DEFINE CLASS cadealeropts AS cursoradapter > SelectCmd = "select DealerOpts.OptsID, NVL(DealerOpts.OptionID,?getOptionID) as OptionID, NVL(DealerOpts.MakeID, ?getMakeID) as MakeID, "+; > "Models.ModelID as ModelID, Models.MfgName, Models.Name as ModelName, "+; > "Models.ModelNmbr as ModelNmbr, Models.ModelYear as ModelYear, DealerOpts.Retail, DealerOpts.Cost, "+; > "DealerOpts.Costline, DealerOpts.Type as cType, DealerOpts.StdOption "+; > "from DealerOpts "+; > "RIGHT JOIN Models ON DealerOpts.ModelID = Models.ModelID and DealerOpts.OptionID = ?getOptionID and "+; > "DealerOpts.MakeID = ?getMakeID where cast(Models.ModelID as varchar(12)) $ (?getModelIDs)" > CursorSchema = "OptsID I, OptionID I, MakeID I, ModelID I, MfgName C(40), ModelName C(65), "+; > "ModelNmbr C(20), ModelYear C(40), Retail N(10, 2), Cost N(10, 2), Costline N(10, 2),"+; > "cType C(12), StdOption L(1)" > Alias = "curdealeropts" > DataSourceType = "Native" > Flags = 0 > CompareMemo = .T. > FetchMemo = .F. > SendUpdates = .T. > KeyFieldList = "OPTSID" > Tables = "DealerOpts" > UpdatableFieldList = "OPTIONID, MAKEID, MODELID, RETAIL, COST, COSTLINE, CTYPE, STDOPTION" > UpdateNameList = "OPTSID DealerOpts.OPTSID,OPTIONID DealerOpts.OPTIONID, MAKEID DealerOpts.MAKEID,"+; > "MODELID DealerOpts.MODELID, RETAIL DealerOpts.RETAIL, COST DealerOpts.COST, "+; > "COSTLINE DealerOpts.COSTLINE, CTYPE DealerOpts.Type, STDOPTION DealerOpts.STDOPTION" > BreakOnError = .T. > UseCursorSchema = .T. > UseTransactions = .T. > Name = "cadealeropts" > > PROCEDURE Init > set multilocks on > llReturn = dodefault() > ENDPROC > > PROCEDURE BeforeUpdate(cFldState, lForce, nUpdateType, cUpdateInsertCmd, cDeleteCmd) > IF ISNULL(EVALUATE(this.Alias +[.OPTSID])) > TEXT TO cUpdateInsertCmd NOSHOW TEXTMERGE PRETEXT 15 > INSERT INTO DealerOpts (OptionID, MakeID, Retail, Cost, Costline, cType, StdOption, ModelID) > VALUES > (<<EVALUATE(this.Alias+[.OptionID])>>, > <<EVALUATE(this.Alias+[.MakeID])>>, > <<EVALUATE(this.Alias+[.Retail])>>, > <<EVALUATE(this.Alias+[.Cost])>>, > <<EVALUATE(this.Alias+[.Costline])>>, > <<EVALUATE(this.Alias+[.cType])>>, > <<EVALUATE(this.Alias+[.StdOption])>>, > <<EVALUATE(this.Alias+[.ModelID])>>) > ENDTEXT > ENDIF > ENDPROC >ENDDEFINE >>