General information
Category:
Coding, syntax & commands
hi All Friends
Sorry for english
i have created Cursoradapter in form procedure activate
when i add new record in this cursoradapter cursoradapter was updated
but when i edit this record error occured '
"Microsft cursor engine row cannot be located for updating, some value may have changes since it was last read"
and when i delete this record error occured '
DELETE statement conflicted fk_whcompanydealer_whdealer
here is no relation
i see relationship between about now i have deleted all relationship
but error was not cleared and automatically deleted relataed record from whcustomer
i have very try but i am confuse so plesase tell where i am wronge
loCommand = Createobject('ADODB.Command')
loCommand.ActiveConnection = MYACCCONN
WHDCHEAD = Createobject('CursorAdapter')
llReturn = DoDefault()
Set Multilocks On
With WHDCHEAD
.Alias = 'whdchead'
.DataSourceType = 'ADO'
TEXT TO .SELECTCMD NOSHOW
select WHDCHEAD.BY_NAME, WHDCHEAD.CUSTOMER, WHDCHEAD.C_CODE, WHDCHEAD.DC_DT, WHDCHEAD.DC_NO, WHDCHEAD.DDE, WHDCHEAD.DE, WHDCHEAD.DELIVERY, WHDCHEAD.DESP_BY, WHDCHEAD.DEST_CODE, WHDCHEAD.DO_DT, WHDCHEAD.DO_NO, WHDCHEAD.D_CODE, WHDCHEAD.FREIGHT, WHDCHEAD.GP_DT, WHDCHEAD.GP_NO, WHDCHEAD.GRN_NO,WHDCHEAD.G_CODE, WHDCHEAD.ID, WHDCHEAD.INV_NO, WHDCHEAD.KMS, WHDCHEAD.ORDER_DATE, WHDCHEAD.ORDER_NO, WHDCHEAD.RR_NO, WHDCHEAD.S_CODE, WHDCHEAD.TRUCK_NO, WHDCHEAD.WGN_NO, WHDCHEAD.rail_rec_no,WHDEALER.NAME AS DEALER, WHDEALER.DSTN_CODE AS D_DSTN, WHSUBDEALER.SUBDEALER, WHSUBDEALER.DSTN_CODE AS S_DSTN
from WHDCHEAD
inner join WHDEALER on WHDCHEAD.D_CODE=WHDEALER.CODE
inner join WHSUBDEALER on WHDCHEAD.S_CODE=WHSUBDEALER.CODE
where whdchead.de=?wde and whdchead.c_code=?WCODE
ENDTEXT
TEXT TO .CURSORSCHEMA NOSHOW
BY_NAME I, CUSTOMER C(50), C_CODE I, DC_DT D, DC_NO N, DDE I, DE C(15), DELIVERY I, DESP_BY I, DEST_CODE I, DO_DT D, DO_NO C(10), D_CODE I, FREIGHT N(14, 2), GP_DT D, GP_NO I, GRN_NO C(10), G_CODE I, ID I, INV_NO C(15), KMS N(14, 3), ORDER_DATE T, ORDER_NO C(15), RR_NO C(20), S_CODE I, TRUCK_NO C(50), WGN_NO C(15), RAIL_REC_NO C(15), DEALER C(100), D_DSTN I, SUBDEALER C(100), S_DSTN I
ENDTEXT
TEXT TO .UpdateNameList NOSHOW
BY_NAME WHDCHEAD.BY_NAME, CUSTOMER WHDCHEAD.CUSTOMER, C_CODE WHDCHEAD.C_CODE,
DC_DT WHDCHEAD.DC_DT, DC_NO WHDCHEAD.DC_NO, DDE WHDCHEAD.DDE, DE WHDCHEAD.DE,
DELIVERY WHDCHEAD.DELIVERY, DESP_BY WHDCHEAD.DESP_BY, DEST_CODE WHDCHEAD.DEST_CODE,
DO_DT WHDCHEAD.DO_DT, DO_NO WHDCHEAD.DO_NO, D_CODE WHDCHEAD.D_CODE, FREIGHT WHDCHEAD.FREIGHT,GP_DT WHDCHEAD.GP_DT, GP_NO WHDCHEAD.GP_NO, GRN_NO WHDCHEAD.GRN_NO, G_CODE WHDCHEAD.G_CODE,ID WHDCHEAD.ID, INV_NO WHDCHEAD.INV_NO, KMS WHDCHEAD.KMS, ORDER_DATE WHDCHEAD.ORDER_DATE, ORDER_NO WHDCHEAD.ORDER_NO, RR_NO WHDCHEAD.RR_NO, S_CODE WHDCHEAD.S_CODE,TRUCK_NO WHDCHEAD.TRUCK_NO, WGN_NO WHDCHEAD.WGN_NO, RAIL_REC_NO WHDCHEAD.RAIL_REC_NO
ENDTEXT
TEXT TO .UpdatableFieldList NOSHOW
BY_NAME, CUSTOMER, C_CODE, DC_DT, DC_NO, DDE, DE, DELIVERY, DESP_BY, DEST_CODE,
DO_DT, DO_NO, D_CODE, FREIGHT, GP_DT, GP_NO, GRN_NO, G_CODE, ID, INV_NO, KMS, ORDER_DATE, ORDER_NO, RR_NO, S_CODE, TRUCK_NO, WGN_NO, RAIL_REC_NO
ENDTEXT
.KeyFieldList='ID'
.Datasource = Createobject('ADODB.Recordset')
.Datasource.CursorLocation = 3 && adUseClient
.Datasource.LockType = 3 && adLockOptimistic
.Datasource.ActiveConnection = MYACCCONN
.BufferModeOverride=5
.UseCursorSchema=.T.
.WhereType= 2
llReturn = .CursorFill(.T., .F., 0, loCommand)
endwith
when i can get selectcmd without inner join all work is ok
Next
Reply
View the map of this thread
View the map of this thread starting from this message only
View all messages of this thread
View all messages of this thread starting from this message only