Todas as rotinas que compõem a integração entre o Protheus e a Mercos são totalmente flexíveis , permitindo a personalização completa dos campos do ERP que são utilizados para envio dos dados para o Mercos.
Essas configurações de "de/para" são realizadas através da rotina De-Para de Campos (TCFGA05).
A rotina já realiza uma carga com os campos existentes e seus respectivos conteúdos padrões, mas é possível personalizar de acordo com a necessidade do negócio.
Para cada rotina, deve-se informar o nome do campo do Mercos x nome do campo do ERP:
Exemplo - Rotina Produtos:
Observações:
- É possível utilizar qualquer campo (padrão/customizado) das tabelas que já estão posicionadas na rotina;
- Também é possível utilizar uma função que retorne um conteúdo em formato compatível com o esperado pelo campo.
Relação de Campos por Rotina:
ZTM_ORDEM | ZTM_CPOLV | ZTM_FORMUL | ZTM_FORCA |
001 | nome | ACU->ACU_DESC | 2 |
002 | categoria_pai_id | U_ADCatPai(ACU->ACU_COD, "ACU_XIDCRM", .F.) | 2 |
003 | excluido | .F. | 2 |
001 | nome | AllTrim(Left(SB1->B1_DESC, 100)) | 2 |
002 | preco_tabela | 0 | 2 |
003 | preco_minimo | 0 | 2 |
004 | codigo | SB1->B1_COD | 2 |
005 | comissao | SB1->B1_COMIS | 2 |
006 | ipi | SB1->B1_IPI | 2 |
007 | tipo_ipi | P | 2 |
008 | st | SB1->B1_PICMRET | 2 |
009 | moeda | 0 | 2 |
010 | unidade | SB1->B1_UM | 2 |
011 | saldo_estoque | U_MRC04EST() | 2 |
012 | observacoes | "Observações: " + SB5->B5_XOBS | 2 |
013 | grade_cores | Nil | 2 |
014 | grade_tamanhos | Nil | 2 |
015 | excluido | .F. | 2 |
016 | ativo | SB1->B1_XATVCRM <> "2" | 2 |
017 | categoria_id | ACU->ACU_XIDCRM | 2 |
018 | codigo_ncm | AllTrim(SB1->B1_POSIPI) + AllTrim(SB1->B1_GRTRIB) | 2 |
019 | multiplo | 1 | 2 |
020 | peso_bruto | IIf(SB1->B1_MPESOBR > 0, Round(SB1->B1_MPESOBR, 3), Nil) | 2 |
021 | largura | IIf(SB5->B5_LARG > 0, SB5->B5_LARG, Nil) | 2 |
022 | altura | IIf(SB5->B5_ALTURA > 0, SB5->B5_ALTURA, Nil) | 2 |
023 | comprimento | IIf(SB5->B5_COMPR > 0, SB5->B5_COMPR, Nil) | 2 |
024 | peso_dimensoes_unitario | .T. | 2 |
025 | exibir_no_b2b | .T. | 2 |
001 | produto_id | SB1->B1_XIDCRM | 2 |
002 | imagem_url | AllTrim(Lower((cAliasTRB)->IMAGEM)) | 2 |
003 | ordem | CValToChar((cAliasTRB)->ORDEM) | 1 |
001 | produto_id | SB1->B1_XIDCRM | 2 |
002 | novo_saldo | U_MRC04EST() | 2 |
001 | nome | DA0->DA0_CODTAB + " - " + DA0->DA0_DESCRI | 2 |
002 | tipo | P | 2 |
003 | acrescimo | Nil | 2 |
004 | desconto | Nil | 2 |
005 | excluido | DA0->DA0_ATIVO == "2" | 2 |
001 | tabela_id | DA0->DA0_XIDCRM | 2 |
002 | produto_id | SB1->B1_XIDCRM | 2 |
003 | preco | IIF(DA0->DA0_XTPTAB == "2", DA1->DA1_XPRCLQ, DA1->DA1_PRCVEN) | 2 |
001 | razao_social | SA1->A1_NOME | 2 |
002 | nome_fantasia | SA1->A1_NREDUZ | 2 |
003 | tipo | SA1->A1_PESSOA | 2 |
004 | cnpj | SA1->A1_CGC | 2 |
005 | inscricao_estadual | SA1->A1_INSCR | 2 |
006 | suframa | SA1->A1_SUFRAMA | 2 |
007 | rua | U_ADTrataTxt(AllTrim(FisGetEnd(SA1->A1_END)[1]), .F., .T., .T., .F., .T., .F.) | 2 |
008 | numero | IIf(FisGetEnd(SA1->A1_END, SA1->A1_EST)[3] <> "", U_ADTrataTxt(AllTrim(FisGetEnd(SA1->A1_END)[3]), .F., .T., .T., .F., .T., .F.), "SN") | 2 |
009 | complemento | SA1->A1_COMPLEM | 2 |
010 | bairro | SA1->A1_BAIRRO | 2 |
011 | cep | SA1->A1_CEP | 2 |
012 | cidade | SA1->A1_MUN | 2 |
013 | estado | SA1->A1_EST | 2 |
014 | observacao | CNAE: + SA1->A1_CNAE | 2 |
015 | emails | U_MRCS07Mai() | 1 |
016 | telefones | U_MRCS07Tel() | 1 |
017 | contatos | U_MRCS07Con() | 1 |
018 | enderecos_adicionais | U_MRCS07End() | 1 |
019 | nome_excecao_fiscal | SA1->A1_TIPO + SA1->A1_GRPTRIB | 2 |
020 | segmento_id | AOV->AOV_XIDCRM | 2 |
021 | excluido | .F. | 2 |
001 | cliente_id | SA1->A1_XIDCRM | 2 |
001 | cliente_id | SA1->A1_XIDCRM | 2 |
002 | tabelas_liberadas | U_MRCS09Tab() | 1 |
001 | nome | SE4->E4_DESCRI | 2 |
002 | valor_minimo | SE4->E4_INFER | 2 |
003 | excluido | .F. | 2 |
001 | nome | SA4->A4_NOME | 2 |
002 | cidade | SA4->A4_MUN | 2 |
003 | estado | SA4->A4_EST | 2 |
004 | informacoes_adicionais | E-mail: + AllTrim(Lower(SA4->A4_EMAIL)) + ", Telefone: (" + SA4->A4_DDD + ") " + SA4->A4_TEL | 2 |
005 | excluido | .F. | 2 |
001 | cliente_id | SA1->A1_XIDCRM | 2 |
001 | nome | AllTrim(AOV->AOV_CODSEG) + " - " + AllTrim(AOV->AOV_DESSEG) | 2 |
002 | excluido | .F. | 2 |
001 | id | SA3->A3_XIDCRM | 2 |
002 | nome | SA3->A3_NOME | 2 |
003 | SA3->A3_EMAIL | 2 | |
004 | telefone | ( + AllTrim(SA3->A3_DDD) + ") " + AllTrim(SA3->A3_TEL) | 2 |
005 | administrador | .F. | 2 |
006 | excluido | .F. | 2 |
007 | ultima_alteracao | SA3->A3_XULTAT | 2 |
001 | cliente_id | SA1->A1_XIDCRM | 2 |
002 | usuario_id | SA3->A3_XIDCRM | 2 |
003 | liberado | .T. | 2 |
001 | codigo_ncm | AllTrim(ZT3->ZT3_NCM) + AllTrim(ZT3->ZT3_GRPPRD) | 2 |
002 | icms_credito | ZT3->ZT3_ICMCRD | 2 |
003 | estado_destino | ZT3->ZT3_EST | 2 |
004 | nome_excecao_fiscal | ZT3->ZT3_DESC | 2 |
005 | valor_mva | ZT3->ZT3_MVA | 2 |
006 | valor_pmc | Nil | 2 |
007 | icms_destino | ZT3->ZT3_ICMDST | 2 |
008 | tipo_st | MVA | 2 |
001 | pedido_id | SC5->C5_XSEQLV | 2 |
002 | valor_faturado | SF2->F2_VALBRUT | 2 |
003 | data_faturamento | Left(DtoS(SF2->F2_EMISSAO), 4) + "-" + SubStr(DToS(SF2->F2_EMISSAO), 5, 2) + "-" + SubStr(DToS(SF2->F2_EMISSAO), 7, 2) | 2 |
004 | numero_nf | SF2->F2_DOC + SF2->F2_SERIE | 2 |
005 | informacoes_adicionais | SF2->F2_MENNOTA | 2 |
006 | excluido | SF2->F2_XINTCRM == "9" | 2 |
001 | cliente_id | SA1->A1_XIDCRM | 2 |
002 | data_emissao | Left(DtoS(SC5->C5_EMISSAO), 4) + "-" + SubStr(DToS(SC5->C5_EMISSAO), 5, 2) + "-" + SubStr(DToS(SC5->C5_EMISSAO), 7, 2) | 2 |
003 | data_criacao | StrTran(FWTimeStamp(3, SC5->C5_EMISSAO, Time()), "T", " ") | 2 |
004 | contato_id | Nil | 2 |
005 | transportadora_id | IIf(!Empty(SA4->A4_XIDCRM), SA4->A4_XIDCRM, 771286) | 2 |
006 | endereco_entrega_id | Nil | 2 |
007 | criador_id | IIf(SA3->A3_XIDCRM <> 0, SA3->A3_XIDCRM, SuperGetMV("MC_USERPAD", , 0)) | 2 |
008 | condicao_pagamento_id | SE4->E4_XIDCRM | 2 |
009 | tipo_pedido_id | Nil | 2 |
010 | forma_pagamento_id | Nil | 2 |
011 | rastreamento | Nil | 2 |
012 | valor_frete | SC5->C5_FRETE | 2 |
013 | observacoes | Pedido ERP: + SC5->C5_NUM | 2 |
015 | itens | U_MRCS21Ite() | 1 |
001 | cliente_id | SA1->A1_XIDCRM | 2 |
002 | data_vencimento | Left(DtoS(SE1->E1_VENCREA), 4) + "-" + SubStr(DToS(SE1->E1_VENCREA), 5, 2) + "-" + SubStr(DToS(SE1->E1_VENCREA), 7, 2) | 2 |
003 | numero_documento | AllTrim(SE1->E1_PREFIXO) + "/" + AllTrim(SE1->E1_NUM) + "/" + AllTrim(SE1->E1_PARCELA) | 2 |
004 | observacao | IIf(Empty(SE1->E1_HIST), "Sem observacoes", SE1->E1_HIST) | 2 |
005 | valor | IIf(SE1->E1_SALDO == 0, SE1->E1_VALOR, SE1->E1_SALDO) | 2 |
006 | excluido | SE1->E1_SALDO == 0 | 2 |
001 | nome | ACO->ACO_DESCRI | 2 |
002 | slug | StrTran(Lower(AllTrim(ACO->ACO_DESCRI)), " ", "-") | 2 |
003 | data_inicial | Left(DtoS(ACO->ACO_DATDE), 4) + "-" + SubStr(DToS(ACO->ACO_DATDE), 5, 2) + "-" + SubStr(DToS(ACO->ACO_DATDE), 7, 2) | 2 |
004 | data_final | Left(DtoS(ACO->ACO_DATATE), 4) + "-" + SubStr(DToS(ACO->ACO_DATATE), 5, 2) + "-" + SubStr(DToS(ACO->ACO_DATATE), 7, 2) | 2 |
005 | regras | U_MRCS23Ite() | 1 |
0 Comentários