Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Why the view doesn't want to update record?
Message
 
To
All
General information
Forum:
Visual FoxPro
Category:
Client/server
Title:
Why the view doesn't want to update record?
Miscellaneous
Thread ID:
00848613
Message ID:
00848613
Views:
66
I create a remote view based on connection to an SQL Server database & set this view to update some fields. Here the code from View Designer:
SELECT Inout.CardID, Inout.DateTime, Inout.Door, Inout.username,;
  Inout.changed, Common.Name, Common.Description, Inout.KeyNum;
 FROM ;
     dbo.InOut Inout ;
    INNER JOIN dbo.Common Common ;
   ON  Inout.Door = Common.Number;
   AND  Common.CatID = ( 110 );
 WHERE  Inout.CardID = ( ?main_id );
   AND  Inout.DateTime BETWEEN ?frstdat AND ?scnddat;
 ORDER BY Inout.DateTime

DBSetProp(ThisView,"View","SendUpdates",.T.)
DBSetProp(ThisView,"View","BatchUpdateCount",1)
DBSetProp(ThisView,"View","CompareMemo",.T.)
DBSetProp(ThisView,"View","FetchAsNeeded",.F.)
DBSetProp(ThisView,"View","FetchMemo",.T.)
DBSetProp(ThisView,"View","FetchSize",100)
DBSetProp(ThisView,"View","MaxRecords",-1)
DBSetProp(ThisView,"View","Prepared",.F.)
DBSetProp(ThisView,"View","ShareConnection",.F.)
DBSetProp(ThisView,"View","AllowSimultaneousFetch",.F.)
DBSetProp(ThisView,"View","UpdateType",1)
DBSetProp(ThisView,"View","UseMemoSize",255)
DBSetProp(ThisView,"View","Tables","dbo.InOut")
DBSetProp(ThisView,"View","WhereType",3)
DBSetProp(ThisView,"View","ParameterList","mainid,'I';frstdat,'T';scnddat,'T'")

DBSetProp(ThisView+".cardid","Field","DataType","I")
DBSetProp(ThisView+".cardid","Field","UpdateName","dbo.InOut.CardID")
DBSetProp(ThisView+".cardid","Field","KeyField",.T.)
DBSetProp(ThisView+".cardid","Field","Updatable",.T.)

DBSetProp(ThisView+".datetime","Field","DataType","T")
DBSetProp(ThisView+".datetime","Field","UpdateName","dbo.InOut.DateTime")
DBSetProp(ThisView+".datetime","Field","KeyField",.T.)
DBSetProp(ThisView+".datetime","Field","Updatable",.T.)

DBSetProp(ThisView+".door","Field","DataType","I")
DBSetProp(ThisView+".door","Field","UpdateName","dbo.InOut.Door")
DBSetProp(ThisView+".door","Field","KeyField",.T.)
DBSetProp(ThisView+".door","Field","Updatable",.T.)

DBSetProp(ThisView+".username","Field","DataType","C(21)")
DBSetProp(ThisView+".username","Field","UpdateName","dbo.InOut.username")
DBSetProp(ThisView+".username","Field","KeyField",.T.)
DBSetProp(ThisView+".username","Field","Updatable",.T.)

DBSetProp(ThisView+".changed","Field","DataType","I")
DBSetProp(ThisView+".changed","Field","UpdateName","dbo.InOut.changed")
DBSetProp(ThisView+".changed","Field","KeyField",.T.)
DBSetProp(ThisView+".changed","Field","Updatable",.T.)

DBSetProp(ThisView+".name","Field","DataType","C(50)")
DBSetProp(ThisView+".name","Field","UpdateName","dbo.Common.Name")
DBSetProp(ThisView+".name","Field","KeyField",.F.)
DBSetProp(ThisView+".name","Field","Updatable",.F.)

DBSetProp(ThisView+".description","Field","DataType","C(50)")
DBSetProp(ThisView+".description","Field","UpdateName","dbo.Common.Description")
DBSetProp(ThisView+".description","Field","KeyField",.F.)
DBSetProp(ThisView+".description","Field","Updatable",.F.)

DBSetProp(ThisView+".keynum","Field","DataType","I")
DBSetProp(ThisView+".keynum","Field","UpdateName","dbo.InOut.KeyNum")
DBSetProp(ThisView+".keynum","Field","KeyField",.T.)
DBSetProp(ThisView+".keynum","Field","Updatable",.F.)
but when I try to change some of updateable fields "Update conflict" is fired, but ONLY in the first record for every date.


When I try the same with SQLEXEC command:
OPEN DATABASE CheckPoint
cSQL = SQLCONNECT("MyConnection") && returns 1
? SQLEXEC(cSQL, "UPDATE InOut SET UserName = 'Me' SET Changed = 2 WHERE InOut.CardId = 976 and InOut.KeyNum = 32672")
everything is OK. Why?
Against Stupidity the Gods themselves Contend in Vain - Johann Christoph Friedrich von Schiller
The only thing normal about database guys is their tables.
Next
Reply
Map
View

Click here to load this message in the networking platform