LOCAL loProxy loProxy=CREATEOBJECT("MSSOAP.SOapClient") loProxy.MSSoapInit(supWS3) replace VLD WITH m.gnkod select mydbf COPY NEXT 1 TO m.gctmp+'a1.dbf' SELECT 0 USE m.gctmp+'a1.dbf' ALIAS a1 EXCLUSIVE rr=CURSORTOXML("a1","XMLTMP",1,17,0,"1") IF rr>0 i=0 FOR i=1 TO 30 lcCPP=loProxy.up01(XMLTMP) IF lcCPP=1251 EXIT ENDIF ENDFOR RELEASE loProxy IF i>=30 DO FORM warn02 WITH 'Wrong codepage! Do it again!' ELSE SELECT &lcoldali replace load_dat WITH DATETIME() WAIT WINDOW 'We can do it...' NOWAIT ENDIFAt the server's side I check codepage of the received and transformed table:
PROCEDURE up01(adup) AS XMLString m.lnrecs=XMLTOCURSOR(adup,"n1",0) IF m.lnrecs>0 SELECT n1 lncpp=CPDBF( ) IF lncpp=1251 && UPDATE \\am\base\DAT.DBF SET asb20.nb=n1.nb ; WHERE dat.ucd=n1.ucd RETURN(lncpp) ELSE RETURN(lncpp) ENDIF USE ENDIF ENDPROCCan I avoid this additional code? Because it correctly transferring sometimes after 3 (third) attempts and as you know, we have a very bad connection in Russia :(