GLOBALS DEFINE usuarios,clave CHAR(50) END GLOBALS MAIN DEFINE accion CHAR(2) DEFER INTERRUPT CALL startlog("import.log") OPEN WINDOW w1 WITH FORM "inf001" CALL ARG_VAL(1) RETURNING usuarios CALL ARG_VAL(2) RETURNING clave INPUT BY NAME accion AFTER INPUT IF accion = 'E' THEN CALL extraer() END IF IF accion = 'I' THEN CALL importar() END IF EXIT INPUT END INPUT CLOSE WINDOW w1 END MAIN FUNCTION extraer() DEFINE ptabla CHAR(50), cambia,user_script,user_script1,selec CHAR(100) CONNECT TO "exterior" AS "IFMX" UNLOAD TO "F:\\IMPORT\\iptb02.txt" SELECT * FROM vetb00002 CONNECT TO "marmotech" AS "MSSQL" LOAD FROM "F:\\IMPORT\\cctb01.txt" INSERT INTO cctb01 (cod_cia,num_doc,tipo_doc,tipo_cliente,sec_cliente,cod_emp, cod_emp_Sec,fecha_orig, fecha_ven,aplica_a, banco,num_cheque,valor,valor_efectivo, valor_cheque,costo,monto_desc,status_t,us_crea, fech_crea,us_mod,fech_mod,bodega) END FUNCTION { =======================================================================} FUNCTION importar() DEFINE ptabla CHAR(50),opt4 CHAR(10), cambia,user_script,user_script1,selec CHAR(100) OPEN WINDOW w3 WITH FORM "importar" INPUT ptabla FROM tabla AFTER INPUT IF int_flag THEN ERROR "OPERACION CANCELADA" LET int_flag = false RETURN END IF IF ptabla IS NULL THEN ERROR "DEBE DIGITAR NOMBRE DE TABLA" NEXT FIELD ptabla END IF EXIT INPUT END INPUT CONNECT to "smarmotech" USER usuarios USING clave LET selec = " SELECT * FROM "||ptabla CLIPPED LET user_script = "F:\\IMPORT\\"||ptabla CLIPPED||".LD " UNLOAD TO user_script CLIPPED selec LET opt4 = FGL_WINQUESTION("Pregunta","Esta seguro que desea actualizar tabla "||ptabla CLIPPED ||"?","no","yes|no|cancel","question",0) IF opt4 = "yes" THEN LET selec = "DELETE FROM "||ptabla CONNECT TO "exterior" PREPARE comando FROM selec EXECUTE comando LET selec = " INSERT INTO "||ptabla CLIPPED LOAD FROM user_script selec END IF CLOSE WINDOW w3 END FUNCTION