01. DADOS GERAIS
Linha de Produto: | Microsiga Protheus® |
---|---|
Segmento: | Serviços |
Módulo: | Gestão de Serviços |
Função: | TECA351 |
Ticket: | Não há. |
Requisito/Story/Issue (informe o requisito relacionado) : | DSERSGS-5254 |
02. SITUAÇÃO/REQUISITO
Ponto de Entrada para exportação da apuração de benefícios, que será habilitado caso o parâmetro MV_GSRHOTP contenha o valor 2 e a operação de envio seja Inclusão
03. SOLUÇÃO
Ponto de Entrada
Descrição: | Microsiga Protheus® | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Localização: | Serviços | |||||||||||||||
Programa Fonte: | TECA351.PRW | |||||||||||||||
Função: | At351EnvRH | |||||||||||||||
Parâmetros |
| |||||||||||||||
Retorno: |
|
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FILEIO.CH"
User Function At351IBe()
Local lRet := .T.
Local cDetCab := ""
Local nY := 0
Local cDetLinha := ""
Local nC := 0
Local cEmp := FWGrpCompany()
Local cFil := FwCodFil()
Local cDirArq := "\EXPCSVTEC\"+cEmp+"\" + StrTran(cFil, " ", "_")+"\"
Local lFirstProc := .F.
Local cMsg := ""
Local cColuna := ""
If ValType(PARAMIXB) == "A" .AND. Len(PARAMIXB) >= 4 .AND. ValType(PARAMIXB[01]) == "A" .AND. Len(PARAMIXB[01]) > 0 .AND. ValType(PARAMIXB[02]) == "A" .AND. Len(PARAMIXB[02]) > 0
If !ExistDir(cDirArq)
MakeDir("\EXPCSVTEC\")
MakeDir("\EXPCSVTEC\"+cEmp+"\")
MakeDir(cDirArq)
EndIf
aCabec := PARAMIXB[01]
aItens := PARAMIXB[02]
lFirstProc := PARAMIXB[04]
cNomeArq := "U_At351Exp"+Dtos(Date())+LTrim(Str(PARAMIXB[03]))+".txt"
If lFirstProc .AND. File(cDirArq+cNomeArq)
fErase(cDirArq+cNomeArq)
EndIf
If !File(cDirArq+cNomeArq)
nHandle := FCreate(cDirArq+cNomeArq)
Else
nHandle := FOpen(cDirArq+cNomeArq, FO_READWRITE)
FSeek(nHandle, 0, 2)
EndIf
aCabec := PARAMIXB[01]
aItens := PARAMIXB[02]
If nHandle <> -1
For nC := 1 to len(aCabec)
cColuna := aCabec[nC, 01]
cColuna := IIF( cColuna == "CPERIODO","RGB_PERIOD", IIF(cColuna == "CROTEIRO","RGB_ROTEIR",IIF(cColuna == "CNUMPAGTO", "RGB_SEMANA", cColuna)) )
cDetCab += Padr(Alltrim(IIF( ValType(aCabec[nC, 02])<> "D",cValToChar(aCabec[nC, 02]) , DtoS(aCabec[nC, 02]))), TamSX3(cColuna)[1])
Next nC
For nC := 1 to Len(aItens)
cDetLinha := cDetCab
For nY := 1 to Len(aItens[nC])
cDetLinha += PadR(Alltrim(IIF( ValType(aItens[nC, nY, 02])<> "D",cValToChar(aItens[nC, nY, 02]) , DtoS(aItens[nC, nY, 02]))), TamSX3(aItens[nC, nY, 01])[1])
Next nY
fWrite(nHandle, cDetLinha)
Next nC
lRet := .T.
fClose(nHandle)
Else
Help("", 1, "U_At351IBe", "Problemas na criação do arquivo" , 1, 0)
lRet := .F.
EndIf
Else
Help("", 1, "U_At351IBe","Não enviados dados válidos referente os beneficios" , 1, 0)
lRet := .F.
EndIf
Return lRet
04. DEMAIS INFORMAÇÕES
Não há.