Árvore de páginas

Ponto-de-Entrada: TMSPERFIL - Altera Informações que o Sistema Retorna no Perfil do Cliente
Versões: Microsiga Protheus 8.11 , Microsiga Protheus 10
Compatível Países: Todos
Sistemas Operacionais: Todos
Compatível às Bases de Dados: Todos
Idiomas: Espanhol , Inglês
Descrição:

O objetivo do ponto de entrada TMSPERFIL é permitir ao usuário alterar alguma informação que o sistema retorna no perfil do cliente.

Eventos


 

Programa Fonte
TMSA040.PRW
Sintaxe

TMSPERFIL - Altera Informações que o Sistema Retorna no Perfil do Cliente ( < aPerfil> ) --> aPerfil

Parâmetros:
Nome Tipo Descrição Default Obrigatório Referência
aPerfil Array of Record //--[01] = Cliente agrupamento
//--[02] = Loja do cliente agrupamento
//--[03] = Condicao de frete
//--[04] = FOB Dirigido
//--[05] = Cubagem
//--[06] = Base faturamento
//--[07] = Tipo de faturamento
//--[08] = Comprovante de entrega
//--[09] = Responsavel comprovante
//--[10] = Valor maximo da fatura
//--[11] = Qtde.CTRC por fatura
//--[12] = Separa grupos de produto
//--[13] = Separa estados
//--[14] = Separa tipo de transporte
//--[15] = Separa CIF / FOB
//--[16] = Taxa por CTRC
//--[17] = Separa tipo de documento
//--[18] = Qtde. NFs por CTRC
//--[19] = Ajuste Obrigatorio
//--[20] = Peso Maximo CTRC
//--[21] = Separa FOB + Cliente Remetente
//--[22] = Determina se a geracao de documentos ira ou nao, considerar as quebras por numero de notas fiscais por CTRC e peso maximo por CTRC
//--[23] = Separa CTRC Entregue / CTRC Nao Entregue
//--[24] = Determina se recalcula o valor do frete caso as informacoes da nota fiscal seja diferente da cotacao de frete
//--[25] = Paga Reentrega
//--[26] = % Relativo a 1a Reentrega
//--[27] = % Relativo a 2a Reentrega
//--[28] = % Relativo a 3a Reentrega
//--[29] = % Relativo as demais Reentregas
//--[30] = Valor Maximo de Cobranca
//--[31] = Valor Fixo por Reentrega
//--[32] = Primeira Tentativa de Cobranca de Reentrega
//--[33] = Valor Minimo do Documento Original
//--[34] = Paga Refaturamento
//--[35] = % Refaturamento
//--[36] = Valor Minimo do Documento Original para Refaturamento
//--[37] = Tipo de dias "1"=Dias uteis;"2"=Dias corridos
//--[38] = Paga Amazenagem
//--[39] = Minimo de Dias para Armazenagem
//--[40] = Maximo de Dias para Armazenagem
//--[41] = Valor Minimo de Armazenagem
//--[42] = Valor Maximo de Armazenagem
//--[43] = Valor Minimo do Documento Original para Armazenagem
//--[44] = Cliente
//--[45] = Loja Cliente
//--[46] = Utiliza produto para calculo do frete

X
Retorno
    aPerfil(vetor)
  • //--[01] = Cliente agrupamento
    //--[02] = Loja do cliente agrupamento
    //--[03] = Condicao de frete
    //--[04] = FOB Dirigido
    //--[05] = Cubagem
    //--[06] = Base faturamento
    //--[07] = Tipo de faturamento
    //--[08] = Comprovante de entrega
    //--[09] = Responsavel comprovante
    //--[10] = Valor maximo da fatura
    //--[11] = Qtde.CTRC por fatura
    //--[12] = Separa grupos de produto
    //--[13] = Separa estados
    //--[14] = Separa tipo de transporte
    //--[15] = Separa CIF / FOB
    //--[16] = Taxa por CTRC
    //--[17] = Separa tipo de documento
    //--[18] = Qtde. NFs por CTRC
    //--[19] = Ajuste Obrigatorio
    //--[20] = Peso Maximo CTRC
    //--[21] = Separa FOB + Cliente Remetente
    //--[22] = Determina se a geracao de documentos ira ou nao, considerar as quebras por numero de notas fiscais por CTRC e peso maximo por CTRC
    //--[23] = Separa CTRC Entregue / CTRC Nao Entregue
    //--[24] = Determina se recalcula o valor do frete caso as informacoes da nota fiscal seja diferente da cotacao de frete
    //--[25] = Paga Reentrega
    //--[26] = % Relativo a 1a Reentrega
    //--[27] = % Relativo a 2a Reentrega
    //--[28] = % Relativo a 3a Reentrega
    //--[29] = % Relativo as demais Reentregas
    //--[30] = Valor Maximo de Cobranca
    //--[31] = Valor Fixo por Reentrega
    //--[32] = Primeira Tentativa de Cobranca de Reentrega
    //--[33] = Valor Minimo do Documento Original
    //--[34] = Paga Refaturamento
    //--[35] = % Refaturamento
    //--[36] = Valor Minimo do Documento Original para Refaturamento
    //--[37] = Tipo de dias "1"=Dias uteis;"2"=Dias corridos
    //--[38] = Paga Amazenagem
    //--[39] = Minimo de Dias para Armazenagem
    //--[40] = Maximo de Dias para Armazenagem
    //--[41] = Valor Minimo de Armazenagem
    //--[42] = Valor Maximo de Armazenagem
    //--[43] = Valor Minimo do Documento Original para Armazenagem
    //--[44] = Cliente
    //--[45] = Loja Cliente
    //--[46] = Utiliza produto para calculo do frete
Observações

 

Importante:

 

Existem três situações em que o sistema irá ignorar as informações retornadas pelo ponto entrada.

 

1)      Caso o array passado pelo ponto de entrada para o sistema esteja diferente no tipo de informação. Por exemplo, a posição do array de número 11 é numérica, se o retorno do ponto de entrada retornar nesta posição um conteúdo caracter, toda a informação passada pelo ponto de entrada no array será ignorada.

2)      Caso o array que o ponto de entrada retorna para o sistema não tiver o mesmo tamanho do array passado que o sistema passou para o ponto, toda a informação passada pelo ponto de entrada no array será ignorada.

3)      Nas posições 1 e 2, 44 e 45 contém o código e loja do cliente respectivamente. Caso o ponto de entrada retorne nestas posições clientes que não existam na base de dados, toda a informação passada pelo ponto de entrada no array será ignorada.

 

Exemplos
Temos a situação que precisamos alterar a quantidade de conhecimentos máximo por fatura. Mas não alteraremos o seu cadastro no perfil de cliente, e sim usaremos o ponto de entrada TMSPERFIL.  User Function TMSPERFIL() //-- Formato do vetor aRet//--[01] = Cliente agrupamento//--[02] = Loja do cliente agrupamento//--[03] = Condicao de frete//--[04] = FOB Dirigido//--[05] = Cubagem//--[06] = Base faturamento//--[07] = Tipo de faturamento//--[08] = Comprovante de entrega//--[09] = Responsavel comprovante//--[10] = Valor maximo da fatura//--[11] = Qtde.CTRC por fatura//--[12] = Separa grupos de produto//--[13] = Separa estados//--[14] = Separa tipo de transporte//--[15] = Separa CIF / FOB//--[16] = Taxa por CTRC//--[17] = Separa tipo de documento//--[18] = Qtde. NFs por CTRC//--[19] = Ajuste Obrigatorio//--[20] = Peso Maximo CTRC//--[21] = Separa FOB + Cliente Remetente//--[22] = Determina se a geracao de documentos ira ou nao, considerar as quebras pr numero de notas fiscais por CTRC e peso maximo por CTRC//--[23] = Separa CTRC Entregue / CTRC Nao Entregue              //--[24] = Determina se recalcula o valor do frete caso as informacoes da nota fiscal seja diferente da cotacao de frete//--[25] = Paga Reentrega//--[26] = % Relativo a 1a Reentrega//--[27] = % Relativo a 2a Reentrega//--[28] = % Relativo a 3a Reentrega//--[29] = % Relativo as demais Reentregas//--[30] = Valor Maximo de Cobranca//--[31] = Valor Fixo por Reentrega//--[32] = Primeira Tentativa de Cobranca de Reentrega//--[33] = Valor Minimo do Documento Original//--[34] = Paga Refaturamento//--[35] = % Refaturamento//--[36] = Valor Minimo do Documento Original para Refaturamento//--[37] = Tipo de dias '1'=Dias uteis;'2'=Dias corridos//--[38] = Paga Amazenagem//--[39] = Minimo de Dias para Armazenagem//--[40] = Maximo de Dias para Armazenagem//--[41] = Valor Minimo de Armazenagem//--[42] = Valor Maximo de Armazenagem//--[43] = Valor Minimo do Documento Original para Armazenagem//--[44] = Cliente//--[45] = Loja Cliente//--[46] = Utiliza produto para calculo do frete Local aPerfil := aClone(ParamIxb)Local nCount  := 0aPerfil[11] := 100If FunName() == 'TMSA200'            MsgStop('chamada do ponto de entrada TMSPERFIL no calculo do frete')ElseIf FunName() == 'TMSA050'            MsgStop('chamada do ponto de entrada TMSPERFIL na digitacao de notas')ElseIf FunName() == 'TMSA040'            MsgStop('chamada do ponto de entrada TMSPERFIL na cotacao de frete')EndIfReturn aPerfil