awajax.lSuccess(.f.): Error detected at code line #[no, av of method 'awajax.propsrestore_ds_views' "!Wcolview.wrestore() - Error(): 2139 Message(): SelectCmd is empty. Error parameters if any: .NULL. Work area: .NULL. Trigger failed: N/A" Call stack: 01 .processhit (n/a) > 02 .process (n/a) > 03 .routerequest (n/a) > 04 easyprocess.process (n/a) > 05 wwprocess.process (n/a) > 06 easyprocess.domevent (n/a) > 07 easyprocess.ajaxformrequest (n/a) > 08 awajax.formrequest (n/a) > 09 awajax.propsrestore (n/a) > 10 awajax.propsrestore_ds_views (n/a)
Exe: "C:\seazure\easylabwebfoxpro\easytest.exe", version 1.0.251 of 2018-09-11 05:35:20 PM (3 minutes ago) Process ID: 8040 Client: 186.233.90.144 userID: 5AA00VTFS URL: http://186.233.90.144/easyTest/DOMEvent.easy?&Event=click&ObjAddr=cad_medico1_scx-button_padrao1&UserID=5AA00VTFS&PageInit=&nReq=20 Form variables: &nKeyCode= &nButton=1 &nShiftAltCtrl=0 &nXcoord=185 &nYcoord=604 &nRow=686 &nCol=228 &lastKey=0 &version=2.28.0-beta.1 &sync=false &vpw=655 &vph=756 &userID=5AA00VTFS &reqID=5900_5AK11SE7X-001 &nInet=0.000 &nCli=0.049 FAS version: 2.28.0-beta.1 of 2018‑08‑29 03:07:05 PM GMT (2 weeks ago) Table New: 'C:\seazure\easylabwebfoxpro\temp\5AA00VTFS_5aa00vtfs_cad_medico1_scx_New.DBF' can't be found
OK, you miss details on the CAD that fails…
Here is the fix (will be in V 2.28.0-beta.2
):
modify class awColView of aw method wRestore
&& replace
success = m.oCAD.CursorFill(Nvl(m.oView.CAD.lUseCursorSchema, m.oCAD.UseCursorSchema), .T.) or cResultAdd(@m.cResult, caError())
&& by
success = m.oCAD.CursorFill(Nvl(m.oView.CAD.lUseCursorSchema, m.oCAD.UseCursorSchema), .T.);
or cResultAdd(@m.cResult, m.oView.CAD.Name + [.CursorFill() to alias ] + m.cView + [ failed: ] + caError() + CRLF + [CAD details: ] + cL(m.oView))
It helped a lot! Already showed me where the problem may be, thank you!
awajax.lSuccess(.f.): Error detected at code line #[no, av of method 'awajax.propsrestore_ds_views' "!Wcolview.wrestore() - ca_generico.CursorFill() to alias GENERICO failed: Error(): 2139 Message(): SelectCmd is empty. Error parameters if any: .NULL. Work area: .NULL. Trigger failed: N/A CAD details: Object {class: "Empty", cad: Object {class: "Empty", cselectcmd: "SELECT CODIGO,ID,FANTASIA,STATUS FROM CONVENIO WHERE CODIGO = '00008'", lnodataonload: .F., lusecursorschema: .F., name: "ca_generico"}, parm: Object {class: "Empty"}, prop: Object {class: "Empty", allowsimultaneousfetch: .F., autoincerror: .T., batchupdatecount: 1, buffering: 5, comparememo: .T., connecthandle: 1, connectname: "", database: "", fetchasneeded: .F., fetchiscomplete: .T., fetchmemo: .T., fetchsize: -1, keyfieldlist: "", mapbinary: .F., mapvarchar: .T., maxrecords: -1, parameterlist: "", prepared: .F., recordsfetched: 1, refresh: -2, sendupdates: .F., sourcename: "", sourcetype: 102, sql: "SELECT CODIGO,ID,FANTASIA,STATUS FROM CONVENIO WHERE CODIGO = '00008'", tables: "", updatablefieldlist: "", updatenamelist: "", updatetype: 1, usememosize: 255, wheretype: 1}, requeryms: .NULL., set: Object {class: "Empty", ansi: "OFF", collate: "MACHINE", deleted: "ON", sqlbuffering: "OFF"}, used: .T.}" Call stack: 01 .processhit (n/a) > 02 .process (n/a) > 03 .routerequest (n/a) > 04 easyprocess.process (n/a) > 05 wwprocess.process (n/a) > 06 easyprocess.domevent (n/a) > 07 easyprocess.ajaxformrequest (n/a) > 08 awajax.formrequest (n/a) > 09 awajax.propsrestore (n/a) > 10 awajax.propsrestore_ds_views (n/a)
Exe: "C:\seazure\easylabwebfoxpro\easytest.exe", version 1.0.261 of 2018-09-12 10:04:08 AM (3 minutes ago) Process ID: 9424 Client: 186.233.90.144 userID: 5AA00VTFS URL: http://186.233.90.144/easyTest/DOMEvent.easy?&Event=click&ObjAddr=cad_medico1_scx-button_padrao1&UserID=5AA00VTFS&PageInit=&nReq=13 Form variables: &nKeyCode= &nButton=1 &nShiftAltCtrl=0 &nXcoord=190 &nYcoord=598 &nRow=680 &nCol=233 &lastKey=0 &version=2.28.0-beta.1 &sync=false &vpw=655 &vph=779 &userID=5AA00VTFS &reqID=0544_5AL0LOFR6-001 &nInet=0.000 &nCli=0.053 FAS version: 2.28.0-beta.1 of 2018‑08‑29 03:07:05 PM GMT (2 weeks ago) Table New: 'C:\seazure\easylabwebfoxpro\temp\5AA00VTFS_5aa00vtfs_cad_medico1_scx_New.DBF' can't be found
please try this fix:
modify class awColView of aw method wRestore
…
oCAD.selectCmd = Evl(oCAD.selectCmd, m.oView.CAD.cSelectCmd) && add this instruction
success = m.oCAD.CursorFill(Nvl(m.oView.CAD.lUseCursorSchema, m.oCAD.UseCursorSchema), .T.);
or cResultAdd(@m.cResult, m.oView.CAD.Name + [.CursorFill() to alias ] + m.cView + [ failed: ] + caError() + CRLF + [CAD details: ] + cL(m.oView))
…
I'll test it better, but the problem has been solved. Do you think the deformed grid can be related to this as well?
Do you think the deformed grid can be related to this as well?
Different alias
Error message no longer appeared, but if one client changed something and in another excluded records, the deletion is not being completed.
could you clarify with a video?
I'll record the video, can I upgrade to BETA 2? There are these last changes of this thread?
sure, up to date
Delete code.
LPARAMETERS nButton, nShift, nXcoord, nYcoord && Implementation documentation: see code inherited from aw.vcx!aw???.Click() (click 'View Parent Code')
IF (Type('m.thisForm.wlHTMLgen') == 'L' AND m.thisForm.wlHTMLgen) && Added by FoxInCloud Adaptation Assistant version 2.26 (source mode) on 06/01/2018 16:23
RETURN .T. && Process event on server (your code after this IF ... ENDIF block)
ENDIF && Added by FoxInCloud Adaptation Assistant version 2.26 (source mode) on 06/01/2018 16:23
WITH this.Parent.Parent
IF !thisform.metodo_pad.conecta_banco(.T.)
RETURN .F.
ENDIF
SELECT CRMEDICOCOD
DELETE IN CRMEDICOCOD
GO TOP IN CRMEDICOCOD
.grID_PADRAO1.Refresh()
.grID_PADRAO1.Enabled = .T.
thisform.limpaitens(1)
ENDWITH
did you check in the table?
what is the save code?
private datasession?
buffering?
CAD.sendUpdates = .T.
?
did you check in the table?
Yes
what is the save code?
LPARAMETERS __cursor as String, __fazrelease as Boolean
LOCAL M.TEXTOERRO AS String, M.NUMERRO AS Number
IF !TABLEUPDATE(2,.T.,EVALUATE("__cursor"))
IF _screen.inter = .T.
AERROR(AER)
IF _screen.tipobanco = "POSTGRESQL"
M.ACAO = AER(1,2)
ELSE
M.ACAO = AER(1,3)
ENDIF
SELECT ACAO
INSERT INTO ACAO FROM MEMVAR
TABLEREVERT(.T.,__cursor)
M.FEZ = SQLEXEC(_screen.handle,[ROLLBACK])
ELSE
AERROR(AER)
IF _screen.tipobanco = "POSTGRESQL"
M.TEXTOERRO = AER(1,2)
ELSE
M.TEXTOERRO = AER(1,3)
ENDIF
IF "#ET#" $ M.TEXTOERRO
M.TEXTOERRO = STRTRAN(M.TEXTOERRO,"#ET#","|")
M.TEXTOERRO = GETWORDNUM(M.TEXTOERRO,2,"|")
*-FIC- Replaced by FoxInCloud Adaptation Assistant version 2.26 (source mode) on 06/01/2018 17:21
*-FIC- MESSAGEBOX(M.TEXTOERRO,48,"Atenção")
wMessageBox(M.TEXTOERRO,48,"Atenção")
M.FEZ = SQLEXEC(_screen.handle,[ROLLBACK])
ELSE
IF _screen.tipobanco = "POSTGRESQL"
trataerro(AER(1,1),AER(1,2),__cursor,PROGRAM(),LINENO())
ELSE
trataerro(AER(1,1),AER(1,3),__cursor,PROGRAM(),LINENO())
ENDIF
M.FEZ = SQLEXEC(_screen.handle,[ROLLBACK])
IF __fazrelease = .T.
thisform.Release()
ENDIF
ENDIF
ENDIF
RETURN .F.
ELSE
RETURN .T.
ENDIF
private datasession?>
YES
buffering?
5
CAD.sendUpdates = .T.?
YES
When I make my request without messing with another client it works. If the problem changes on two clients at the same time, then the problem occurs.
please set a breakpoint in the save method (in development) and check cursor's contents, and tableupdate()
result
otherwise we'll have to go to private support.
Will beta 3 solve this problem as well? I think they are related issues.
Don't think so -- in this case tableUpdate()
seems to fail on the second delete
Please debug the save method as I suggest earlier in the thread.
OK! I'll wait for the new version and debug it.This problem I can get around in other ways
Before tableupdate, the deleted records are appearing again. This only happens in Web Mode.
Arcadio, please be more precise, we can debug only by knowing in details when, why and where the bug happens, what you observe and expect.
what code line?
what do you see in the cursor?
getFldState()
?
please provide valuable information.
See this new video, I believe you can understand the problem well.
The deleted record in web mode returns to the cursor, as if a Recall was done.
thanks for the video and clear explanations
we found the issue and will provide a fix beginning of next week
have a nice weekend!
Great! We made a lot of progress this week and adjusted various details. Every day, I am more convinced that FIC is the best choice I could make. Thanks for the attention and have a great weekend too.
Every day, I am more convinced that FIC is the best choice I could make
Do feel free to spread the word through a blog, case study, posts on forums…
FoxInCloud needs support, and positive feedback compared to the non-sense that pseudo-experts can write without any knowledge nor experience.
I am to a big part responsible for getting Alex to try FiC, since I discussed this with him quite a lot at last year's SWFox. This year both Alex and I will "spread the word". 😃
Undoubtedly Thierry, had already read this topic and impressive how some people give opinions without knowing. I'm working hard to do a part of migrating our software. As soon as I complete this part I will leave my impressions and opinions.
They more than give their opinion, they label it as "expertise"; anyone finding this thread (#2 or 3 when Googling "FoxInCloud") gets a terrible opinion of FoxInCloud unless he finds my answers 2 pages below (no more than 5% of lurkers IMO).
The most funny (or disgusting) is that my answers were almost flagged as 'promotion' and considered 'impolite'.
We just released V 2.28.0-beta.4
which should fix this issue.
Please provide your feedback.
Okay! Thank you!
Thierry, this version has returned the problem of deformed grids.
I returned the version for beta 3 and everything works just as before.
OK file synchronization issue
we'll get back to backups
OK! I'm waiting for the new version.
beta.4 fixed, should be back to normal
just download from the same email and install agin
please feedback
Thierry,
I did some testing and everything seems to work fine. It did not display the grid warping and the delete record in web mode works fine. I will test better and report any new problem again.