Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languagedelphi
firstline1
linenumberstrue
User  Function LJTelaRec( aRet, cMV_LJRECEB, cRecCart, cRecCPF, cRecCont, lOcioso, aTitulo )
Local _nVlTotRec    := 0
Local _nTamPref 	:= TamSX3("E1_PREFIXO")[1]
Local _nTamNum 	    := TamSX3("E1_NUM")[1]
Local _nTamParc 	:= TamSX3("E1_PARCELA")[1]
Local _nTamTipo 	:= TamSX3("E1_TIPO")[1]
Local _cPrefixo     := ""
Local _cNumero      := ""
Local _cParcela     := ""
Local _cTipo        := ""

/*/---------------------------------------------------------------------------------------
// Aqui fica a tratativa no desenvolvimento da tela customizada de recebimento de títulos. 
//-------------------------------------------------- */


//Exemplo de recebimento de 2 títulos, sendo 1-------------------------------------

//---------------------------------------------------------------------------------------
//Exemplo de recebimento de 2 títulos, sendo 1 titulo no valor de 30,00 com desconto de 2,00 e o outro titulo no valor de 3050,00 com desconto de 2,00 e o outro titulo no valor de 50,00 com desconto de 10,00.
 10,00.
//---------------------------------------------------------------------------------------

_nVlTotRec := 68 //Valor Total Recebido (já considerando o desconto)

/* aRet é parâmetro de referência e será utilizado para a baixa do título. Deverá ser alimentada na seguinte estrutura: */
aRet := { _nVlTotRec,; //01-Valor Total Recebido
                {}   ; //02-Array com a relação de Titulos a serem Baixados
        }


DbSelectArea("SE1")
SE1->(DbSetOrder(1)) //E1_FILIAL+E1_PREFIXO+E1_NUM+E1_PARCELA+E1_TIPO

//------------------------------------------
// Dados do 1º. Titulo que se deseja receber
//------------------------------------------
_cPrefixo   := "001"
_cNumero    := "000001"
_cParcela   := "1"
_cTipo      := "FI"

//Posiciona no 1º. Título para alimentar o array com os dados da SE1
If SE1->( DbSeek( xFilial("SE1") + PadR(_cPrefixo,_nTamPref) + PadR(_cNumero,_nTamNum) + PadR(_cParcela,_nTamParc) + PadR(_cTipo,_nTamTipo) ) )

    aAdd( aRet[2], {;
        .T.,;                              //|TIT_SELE | Lógico    |               |   01-Posicao lógica (.T. marca o título para baixa, .F. não marca o título para baixa)
        SE1->E1_PREFIXO,;                  //|TIT_PREF | Caractere | E1_PREFIXO    |   02-Prefixo do titulo
        SE1->E1_NUM,;                      //|TIT_NUME | Caractere | E1_NUM        |   03-Número do Titulo
        SE1->E1_PARCELA,;                  //|TIT_PARC | Caractere | E1_PARCELA    |   04-Parcela
        SE1->E1_VENCREA,;                  //|TIT_VREA | Data      | E1_VENCREA    |   05-Vencimento real
        SE1->E1_VALOR,;                    //|TIT_VALO | Numérico  |               |   06-Valor do Título
        0,;                                //|TIT_MULT | Numérico  | E1_MULTA      |   07-Multa
        0,;                                //|TIT_JURO | Numérico  | E1_JUROS      |   08-Juros
        2,;                                //|TIT_DESC | Numérico  |               |   09-Valor de Desconto
        28,;                               //|TIT_RECE | Numérico  |               |   10-Valor recebido
        SE1->E1_TIPO,;                     //|TIT_TIPO | Caractere | E1_TIPO       |   11-Tipo
        "          ",;                     //|TIT_CONT | Caractere | E1_NUMCRD     |   12-Número do Contrato CRD
        SE1->E1_CLIENTE,;                  //|TIT_CLIE | Caractere | E1_CLIENTE    |   13-Cliente
        SE1->E1_LOJA,;                     //|TIT_LOJA | Caractere | E1_LOJA       |   14-Loja
        SE1->E1_FILIAL,;                   //|TIT_FILI | Caractere | E1_FILIAL     |   15-Filial
        SE1->(Recno()),;                   //|TIT_RECN | Numérico  | SE1->(Recno())|   16-Recno do registro da tabela SE1
        0,;                                //|TIT_ACRS | Numérico  | E1_SDACRES    |   17-Acrescimo financeiro
        .F.,;                              //|TIT_CACR | Lógico    | .F.           |   18-Posicao lógica - Posicao reservada de uso interno
        0,;                                //|TIT_ABAT | Numérico  | 0             |   19-Valor de Abatimentos
        SE1->E1_VENCTO,;                   //|TIT_VENC | Data      | E1_VENCTO     |   20-Vencimento original
        SE1->(E1_CLIENTE+E1_FILIAL+E1_PREFIXO+E1_NUM+E1_PARCELA),;  //|TIT_LOCK | Caractere | SE1->E1_CLIENTE+SE1->E1_FILIAL+SE1->E1_PREFIXO+SE1->E1_NUM+SE1->E1_PARCELA | 21-Cod. de uso do Registro para controle de LOCK
        1,;                                //|TIT_MOED | Numérico  | E1_MOEDA      |   22-Código da moeda do título
        NIL,;                              //|TIT_INTE | Numérico  | Nil           |   23-Interes (Juros) - Posicao reservada de uso interno
        ctod("  /  /  "),;                 //|TIT_DTBX | Data      | E1_BAIXA      |   24-Data da baixa
        SE1->E1_SALDO,;                    //|TIT_SALD | Numérico  | E1_SALDO      |   25-Saldo do título
        0;                                 //|TIT_VLIQ | Numérico  | E1_VALLIQ     |   26-Valor Liquido
        } )

EndIf


//------------------------------------------
// Dados do 2º. Titulo que se deseja receber
//------------------------------------------
_cPrefixo   := "001"
_cNumero    := "000002"
_cParcela   := "1"
_cTipo      := "FI"

//Posiciona no 2º. título para alimentar o array com os dados da SE1
If SE1->( DbSeek( xFilial("SE1") + PadR(_cPrefixo,_nTamPref) + PadR(_cNumero,_nTamNum) + PadR(_cParcela,_nTamParc) + PadR(_cTipo,_nTamTipo) ) )

    aAdd( aRet[2], {;
        .T.,;                              //|TIT_SELE | Lógico    |               |   01-Posicao lógica (.T. marca o título para baixa, .F. não marca o título para baixa)
        SE1->E1_PREFIXO,;                  //|TIT_PREF | Caractere | E1_PREFIXO    |   02-Prefixo do titulo
        SE1->E1_NUM,;                      //|TIT_NUME | Caractere | E1_NUM        |   03-Número do Titulo
        SE1->E1_PARCELA,;                  //|TIT_PARC | Caractere | E1_PARCELA    |   04-Parcela
        SE1->E1_VENCREA,;                  //|TIT_VREA | Data      | E1_VENCREA    |   05-Vencimento real
        SE1->E1_VALOR,;                    //|TIT_VALO | Numérico  |               |   06-Valor do Título
        0,;                                //|TIT_MULT | Numérico  | E1_MULTA      |   07-Multa
        0,;                                //|TIT_JURO | Numérico  | E1_JUROS      |   08-Juros
        10,;                               //|TIT_DESC | Numérico  |               |   09-Valor de Desconto
        40,;                               //|TIT_RECE | Numérico  |               |   10-Valor recebido
        SE1->E1_TIPO,;                     //|TIT_TIPO | Caractere | E1_TIPO       |   11-Tipo
        "          ",;                     //|TIT_CONT | Caractere | E1_NUMCRD     |   12-Número do Contrato CRD
        SE1->E1_CLIENTE,;                  //|TIT_CLIE | Caractere | E1_CLIENTE    |   13-Cliente
        SE1->E1_LOJA,;                     //|TIT_LOJA | Caractere | E1_LOJA       |   14-Loja
        SE1->E1_FILIAL,;                   //|TIT_FILI | Caractere | E1_FILIAL     |   15-Filial
        SE1->(Recno()),;                   //|TIT_RECN | Numérico  | SE1->(Recno())|   16-Recno do registro da tabela SE1
        0,;                                //|TIT_ACRS | Numérico  | E1_SDACRES    |   17-Acrescimo financeiro
        .F.,;                              //|TIT_CACR | Lógico    | .F.           |   18-Posicao lógica - Posicao reservada de uso interno
        0,;                                //|TIT_ABAT | Numérico  | 0             |   19-Valor de Abatimentos
        SE1->E1_VENCTO,;                   //|TIT_VENC | Data      | E1_VENCTO     |   20-Vencimento original
        SE1->(E1_CLIENTE+E1_FILIAL+E1_PREFIXO+E1_NUM+E1_PARCELA),;  //|TIT_LOCK | Caractere | SE1->E1_CLIENTE+SE1->E1_FILIAL+SE1->E1_PREFIXO+SE1->E1_NUM+SE1->E1_PARCELA | 21-Cod. de uso do Registro para controle de LOCK
        1,;                                //|TIT_MOED | Numérico  | E1_MOEDA      |   22-Código da moeda do título
        NIL,;                              //|TIT_INTE | Numérico  | Nil           |   23-Interes (Juros) - Posicao reservada de uso interno
        ctod("  /  /  "),;                 //|TIT_DTBX | Data      | E1_BAIXA      |   24-Data da baixa
        SE1->E1_SALDO,;                    //|TIT_SALD | Numérico  | E1_SALDO      |   25-Saldo do título
        0;                                 //|TIT_VLIQ | Numérico  | E1_VALLIQ     |   26-Valor Liquido
        } )
    
EndIf

aTitulo := aRet[2] //Atualiza o Array aTitulo
 
Return .F.

...