Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Ponto de Entrada

Descrição:

Ponto de entrada criado na rotina Orc. Por Fases (OFIXA011) para caso o cliente tenha algum modelo de arquivo diferente do CSV padrão da john deere o mesmo tenha a possibilidade de consiga tratar esse arquivo e importar os itens para o orçamento sem problemasnormalmente.

Localização:

Atualizações / Mov. Peças / Orçamento por Fases

Eventos:

if ! Empty(M->VS1_PEDREF)

MsgAlert(STR0295,STR0025)

return .f.

endif


if lAllExt

aDados := ExecBlock("OX001131", .f., .f., {cContent, cFile})

for nX := 1 to len(aDados)

if OX0010124_IncluiItemOrc(aDados[nX, 1], val(aDados[nX, 2]), @cDet)

nQtdInc += 1

else

cMessage += chr(13) + chr(10) + " " + STR0202 + " " + aDados[nX, 1] + " " +STR0351+ " " + cDet // código do item XXX não pode ser importado.

endif

next

else // importação do csv

for nX := 1 to nLines

cLine := MemoLine(cContent,, nX)

if nX == 1

loop // header do csv JD

endif

cLine := STRTRAN(cLine, '"', "")

aDados := STRTOKARR2(cLine, ",", .T.)


cDet := ""

if OX0010124_IncluiItemOrc(aDados[1], val(aDados[2]), @cDet)

nQtdInc += 1

else

cMessage += chr(13) + chr(10) + " " + STR0202 + " " + aDados[1] + " " +STR0351+ " " + cDet // código do item XXX não pode ser importado.

endif

next

endif


cMessage += chr(13) + chr(10) + cValtoChar(nQtdInc) + STR0352 // " peças incluídas do arquivo selecionado."

AVISO(STR0025, cMessage, { "Ok" }, 3)

Programa Fonte:

OFIXX001.PRW

Função:

OX0010134()

Parâmetros:
NomeTipoDescrição
cConteudoCaracterInforma se a conferência está ok ? (.t. / .f.)

Dados do Arquivo

cFileCaracterRecNo do registro da tabela de Nota Fiscal de Entrada (SF1)

Arquivo

Retorno:

Array contendo dados básicos para importação dos itens.

Exemplo:

Include totvs.ch

user function User Function OX001131()

local cConteudo := paramixb[1]

local cFile := paramixb[2]


// com o arquivo e o conteúdo você pode tratar como quiser

// retornando os dados como um array de arrays com código do item B1_COD e quantidade

// conforme abaixo

return {;

{"COD_ITEM1", "4"};,

{"COD_ITEM2", "5"};,

{"COD_ITEM3", "1"};,

{"COD_ITEM4", "2"};,

}