A importação de arquivos gerados pelo Excel é bem simples, para isso apenas informe em cada coluna o nome real do campo da tabela, exemplo: A1_FILIAL;A1_NOME;A1_END;
#include "totvs.ch" #include "protheus.ch" User Function AEST901() Local cArq := "clientes.txt" Local cLinha := "" Local lPrim := .T. Local aCampos := {} Local aDados := {} Private aErro := {} If !File(cDir+cArq) MsgStop("O arquivo " +cDir+cArq + " não foi encontrado. A importação será abortada!","[AEST901] - ATENCAO") Return EndIf FT_FUSE(cDir+cArq) ProcRegua(FT_FLASTREC()) FT_FGOTOP() While !FT_FEOF() IncProc("Lendo arquivo texto...") cLinha := FT_FREADLN() If lPrim aCampos := Separa(cLinha,";",.T.) lPrim := .F. Else AADD(aDados,Separa(cLinha,";",.T.)) EndIf FT_FSKIP() EndDo Begin Transaction ProcRegua(Len(aDados)) For i:=1 to Len(aDados) IncProc("Importando Clientes...") dbSelectArea("SA1") dbSetOrder(1) dbGoTop() If !dbSeek(xFilial("SA1")+aDados[i,1]) Reclock("SA1",.T.) SA1->A1_FILIAL := xFilial("SA1") For j:=1 to Len(aCampos) cCampo := "SA1->" + aCampos[j] &cCampo := aDados[i,j] Next j SZ1->(MsUnlock()) EndIf Next i End Transaction FT_FUSE() ApMsgInfo("Importação dos Clientes concluída com sucesso!","[AEST901] - SUCESSO") Return