CONTEÚDO
- Visão Geral
- Descrição
- Informações Técnicas
- Exemplo
01. VISÃO GERAL
Linha de Produto: | Microsiga Protheus® |
Segmento: | Serviços |
Módulo: | SIGAFIS - Livros Fiscais |
Função: | FISA061 - Importação de Arquivo Magnético da FCI |
Abrangências: | Microsiga Protheus 12 |
Versões: | Microsiga Protheus 12 |
Sistemas Operacionais: | Todos |
Compatível com as Bases de Dados: | Todos |
Nível de Acesso: | Nível 1 (Acesso Clientes) |
Idiomas: | Todos |
02. DESCRIÇÃO
Esta rotina tem a finalidade de efetuar o processamento, geração e importação de arquivo magnético da FCI, através do mecanismo de rotina automática.
03. INFORMAÇÕES TÉCNICAS
Rotina Automática:
FISA061( [aWizAuto], [aFilAuto], cDir, cArq, nTipo ) --> Nil
Retorno:
Nil
Dicas
O Array aWizAuto com o conteúdo do assistente (Wizard), DEVE ser informado nos moldes do exemplo demonstrado abaixo no quando "Exemplo: Utilização do FISA061 como rotina automática ".
A funcionalidade xMagLeWiz (Carrega os dados da Wizard automaticamente e apresenta a wizard em tela), NÃO DEVE ser utilizada, pois esta função só funciona em MODO GRÁFICO.
O segundo parâmetro contendo as filiais de processamento é opcional, no exemplo abaixo, foi mostrado utilizando a funcionalidade MatFilCalc (Carrega filiais da empresa corrente), caso utilizada, como demonstrado no exemplo, deve-se invoca-la passando o primeiro parâmetro como .F. Ex: MatFilCalc(.F.) .
Para o correto funcionamento, as posições 1 e 2 do array aWizAuto referente as 'data de' e 'data ate', devem ser informadas no formato (AAAAMMDD) - AnoMesDia.
Importante
Quando Tipo 2-"Importar" ou 3-"Gerar arquivo", a variável cDir (Diretório do arquivo a ser importado), não deve ser o mesmo diretório informado no STARTPATH(Ex: "\system\"). Devido ser no STARTPATH onde é feita uma cópia do arquivo original, para que rotina FISA061 tenha acesso exclusivo aos dados e processamento do arquivo.
ExecAuto - MATA089 | Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|---|---|---|---|---|---|
[xAutoCab] | Array of Record | Conteúdo dos campos preenchidos na Wizard. | X | |||
[aFilAuto] | Array of Record | Filiais que serão processadas. | ||||
cDir | Caracter | Caminho pasta destino. | ||||
cArq | Caracter | Nome do arquivo. | ||||
nTipo | Numerico | Podendo ser uma das opções: 1-Processar; 2-Importar; 3-Gerar arquivo. | X |
04. EXEMPLO
#Include "PROTHEUS.CH" User Function FCI() Local lMostraTela := .F. Local aWizAuto := {} // Array com conteúdo dos campos preenchidos na wizard Local aFilAuto := {} // Array com as filiais que serão processadas Local cDir := "\FCI\" // Diretório não pode ser o mesmo informado StartPath Local cArq := "FCI.TXT" Local nTipo := 3 // 1-Processar; 2-Importar; 3-Gerar arquivo Private lMsErroAuto := .F. Private lMsHelpAuto := .T. Private lAutoErrNoFile := .F. IF SELECT("SX2") == 0 cCodEmp := aParams[1] cCodFil := aParams[2] PREPARE ENVIRONMENT EMPRESA cCodEmp FILIAL cCodFil ENDIF aFilAuto := MatFilCalc(.F.) Aadd(aWizAuto,{ "20180201", ; // Data de "20180228", ; // Data ate "FCI_P001", ; // Produto de "FCI_P003", ; // Produto ate "2" , ; // Seleciona filiais ? 1-Sim|2-Não "100" , ; // Versão "2" , ; // Considera produtos bloqueados ? 1-Sim|2-Não "1"}) // Usar cod.FCI anterior para mesma faixa? 1-Sim|2-Não MSExecAuto({|x,y,z,m,n|FISA061(x,y,z,m,n)}, aWizAuto, aFilAuto, cDir, cArq, nTipo) If lMsErroAuto MostraErro() EndIf RESET ENVIRONMENT Return Nil