SpedFiscalAdicionaRegistroC190
Veja também:
Tipo de Retorno
Boolean
Pacote
A função SpedFiscalAdicionaRegistroC190 está defiinida no pacote SpedFiscalAdicionaRegistroC190.pkg.
Para que serve
A função SpedFiscalAdicionaRegistroC190 é usada para fazer a adição de um registro C190 no vetor de registros C190. Ela irá verificar se já existe um registro C190 com o mesmo combinação de campos CST_ICMS, CFOP e ALIQ_ICMS. Se houver, ela irá somar os valores passados no registro existente e se não houver, irá acrescentar o novo registro no array.
Sintaxe
Move (SpedFiscalAdicionaRegistroC190({vtRegistroC190Adicionar}, ;
(&{vtRegistrosC190}, {bPISCOFINS}, {bExibeErro}, ;
(&{sMsgErro}))) to {bRetorno}
Onde:
- {vtRegistroC190Adicionar} é uma variável do tipo tSpedFiscalRegistroC190 com o novo registro que será adicionado em vtRegistrosC190.
- &{vtRegistrosC190} é uma variável do tipo tSpedFiscalRegistroC190[] que precisa ser passada via referência. Esta variável do tipo array contém todos os registros C190 já acrescentados na estrutura do arquivo que está sendo gerado.
- {bPISCOFINS} é usado para indicar para a função qual é o tipo de arquivo que deve ser gerado:
- True: será gerado o arquivo do EFD-Contribuições.
- False: será gerado o arquivo do Sped Fiscal.
- {bExibeErro} é usado para indicar se a função deve exibir ou não os erros que ocorrerem na execução.
- &{sMsgErro} é uma variável do tipo String que precisa ser passada via referência. No caso de ocorrer algum erro durante a execução a função devolverá nesta variável a mensagem do erro ocorrido.
- {bRetorno} indica se a função foi executada com sucesso (True) ou não (False).
Exemplo
Use SpedFiscalLibrary_PacotesSpedFiscalAdicionaRegistroC190.pkg
:
:
tSpedFiscalRegistroC190 vtRegistroC190
:
String sMsgErro
:
// Gerando registro C190
Move ITMVFIS.iCST_ICMS to vtRegistroC190.iCST_ICMS
Move ITMVFIS.iCFOP to vtRegistroC190.iCFOP
Move ITMVFIS.nAliq_ICMS to vtRegistroC190.nALIQ_ICMS
Move (ITMVFIS.nVl_IPI + ITMVFIS.nVl_ICMS_ST + ITMVFIS.nVl_Item + ;
ITMVFIS.nVL_DESP_AC) to vtRegistroC190.nVL_OPR
Move ITMVFIS.nVl_BC_ICMS to vtRegistroC190.nVL_BC_ICMS
Move ITMVFIS.nVl_ICMS to vtRegistroC190.nVL_ICMS
Move ITMVFIS.nVl_BC_ICMS_ST to vtRegistroC190.nVL_BC_ICMS_ST
Move ITMVFIS.nVl_ICMS_ST to vtRegistroC190.nVL_ICMS_ST
Move (vtRegistroC190.nVL_OPR – vtRegistroC190.nVL_BC_ICMS) to vtRegistroC190.nVL_RED_BC
If (vtRegistroC190.nVL_RED_BC < 0) Move 0 to vtRegistroC190.nVL_RED_BC
Move ITMVFIS.nVl_IPI to vtRegistroC190.nVL_IPI
Move ITMVFIS.sCOD_OBS to vtRegistroC190.sCOD_OBS
If (not(SpedFiscalAdicionaRegistroC190(vtRegistroC190, ;
(&vtArquivo.vtBlocoC.vtRegistrosC190),False,True,(&sMsgErro)))) Procedure_Return
Observações
- Para que esta função funcione, todos os registros C190 devem ser adicionados através de sua utilização.
- Veja mais detalhes sobre o processo completo de geração do arquivo em “Gerando o arquivo“.
