Histórico da Página
Ponto de entrada para alteração do relatório de APD de Multas (MNTA745)
Características do Requisito
Linha de Produto: | Microsiga Protheus | ||||||||
Segmento: | Manufatura | ||||||||
Módulo: | SIGAMNT - Manutenção de Ativos e Gestão de Frotas | ||||||||
Rotina: |
| ||||||||
País(es): | Todos | ||||||||
Banco(s) de Dados: | Todos | ||||||||
Sistema(s) Operacional(is): | Todos |
Ponto de Entrada
Descrição: | Ponto de entrada para realizar a alteração do relatório de APD de Multas (MNTA745) |
Localização: | SIGAMNT: Atualizações/Controle de Riscos/Multas/APD |
Programa Fonte: | MNTA745.prw |
Função: | MNTA7452() |
Retorno: |
Bloco de código | ||
---|---|---|
| ||
#Include 'Protheus.ch'
User Function MNTA7452()
Local aArea := GetArea()
Local nLetra
Local cPesq, cText, cVal, cApd, cValApd
Private Titulo := "Relatório de Apropriação de Débito da Multa"
Private oPrint
oPrint := TMSPrinter():New( OemToAnsi( Titulo ) )
oPrint:SetPortrait() //Default Retrato
oFonte := TFont():New("ARIAL",15,15,,.F.,,,,.F.,.F.)
oFont10 := TFont():New("ARIAL",10,10,,.F.,,,,.F.,.F.)
oFont14 := TFont():New("ARIAL",14,14,,.T.,,,,.F.,.F.)
oFont15 := TFont():New("ARIAL",15,15,,.T.,,,,.F.,.F.)
nLinBox := 0
nLinFim := 70
nColFim := 2350
oPrint:StartPage() // Inicializa página de impressão.
oPrint:Say( nLinFim, 025 , "Número da multa:" , oFont15 ) //"Número da multa:"
oPrint:Say( nLinFim, 490 , Transform( AllTrim( TSI->TSI_MULTA ), "@R! 999/99/99" ), oFonte )
oPrint:Say( nLinFim, 1600, "Número do APD:" , oFont15 ) //"Número do APD:"
oPrint:Say( nLinFim, 2050, AllTrim( TSI->TSI_NUMAPD ) , oFonte )
//"Informações do Motorista"
/*------------------------------------------------------*/
//dependendo das informações cadastradas na multa, se for realizada a geração automática de APD pode ser que o campo fique vazio.
nLinFim += 100
oPrint:Say( nLinFim, 927, "Informações do Motorista", oFont15 ) //"Informações do Motorista"
nLinFim += 60
oPrint:Line(nLinFim, 025, nLinFim, nColFim )
nLinFim += 10
dbSelectArea( "DA4" )
dbSetOrder( 01 ) //DA4_FILIAL+DA4_COD
dbSeek( xFilial( "DA4" )+TSI->TSI_CODMOT )
dbSelectArea( "SRA" )
dbSetOrder( 01 ) //RA_FILIAL+RA_MAT
dbSeek( xFilial( "SRA" )+DA4->DA4_MAT )
oPrint:Say( nLinFim, 035, "Motorista: " + AllTrim( TSI->TSI_CODMOT )+" - "+Capital( NGSEEK( "DA4", TSI->TSI_CODMOT, 1, "DA4_NOME" )), oFont10 ) //"Motorista: "
nLinFim += 45
If !Empty( SRA->RA_CC )
oPrint:Say( nLinFim, 035, "Centro de custo: " + AllTrim( SRA->RA_CC )+" - "+Capital( NGSEEK( "CTT", SRA->RA_CC, 1, "CTT_DESC01" )), oFont10 ) //"Centro de custo: "
nLinFim += 45
EndIf
If !Empty( SRA->RA_CARGO )
cPesq := " "
cText := Capital( NGSEEK( "SQ3", SRA->RA_CARGO, 1, "SubStr(Q3_DESCSUM,1,40)" ))
nLetra := AT( cPesq, cText )
If nLetra == 0
cValApd := Capital( NGSEEK( "SQ3", SRA->RA_CARGO, 1, "SubStr(Q3_DESCSUM,1,40)" ))
Else
cVal := SubStr( AllTrim( Capital( NGSEEK( "SQ3", SRA->RA_CARGO, 1, "SubStr(Q3_DESCSUM,1,40)" ))), 1, nLetra )
cApd := Lower( SubStr( AllTrim( NGSEEK( "SQ3", SRA->RA_CARGO, 1, "SubStr(Q3_DESCSUM,1,40)" )), nLetra, 150 ) )
cValApd := cVal + cApd
EndIf
oPrint:Say( nLinFim, 035, "Cargo: " + AllTrim( SQ3->Q3_CARGO )+" - "+cValApd, oFont10 ) //"Cargo: "
nLinFim += 45
EndIf
dbSelectArea( "SM0" )
SM0->( dbSetOrder( 01 ))
If !Empty( DA4->DA4_FILBAS )
oPrint:Say( nLinFim, 035, "Filial: " + AllTrim( DA4->DA4_FILBAS )+" - "+AllTrim( SM0->M0_FILIAL ), oFont10 ) //"Filial: "
nLinFim += 45
EndIf
oPrint:Box( 170, 025, nLinFim, nColFim )
/*------------------------------------------------------*/
If nLinFim > 2350// Pula linha.
oPrint:EndPage()// Termina página de impressão.
oPrint:StartPage()// Inicializa página de impressão.
nLinFim := 0
EndIf
// Assinaturas
/*------------------------------------------------------*/
nLinFim += 500
oPrint:Line( nLinFim, 025 , nLinFim, 1100 ) // Linha para Assinatura / carimbo do responsável
oPrint:Line( nLinFim, 1250, nLinFim, nColFim ) // Linha para Assinatura do gerente
nLinFim += 10
oPrint:Say( nLinFim, 116 , "Assinatura / carimbo do responsável", oFont14 ) // "Assinatura / carimbo do responsável"
oPrint:Say( nLinFim, 1600, "Assinatura do gerente", oFont14 ) // "Assinatura do gerente"
/*------------------------------------------------------*/
// "Recusa de Assinatura"
/*------------------------------------------------------*/
nLinFim += 230
oPrint:Box( nLinFim, 025, nLinFim+200, nColFim ) // Monta Box
nLinFim += 10
oPrint:Say( nLinFim, 979, "Recusa de Assinatura", oFont15 ) // "Recusa de Assinatura"
nLinFim += 60
oPrint:Line( nLinFim, 025 , nLinFim, nColFim )
oPrint:Say( nLinFim, 035 , "Testemunha 1:", oFont10 )// "Testemunha 1:"
oPrint:Say( nLinFim, 1250, "Testemunha 2:", oFont10 )// "Testemunha 2:"
nLinFim += 45
oPrint:Say( nLinFim, 035 , "RG:", oFont10 ) // "RG:"
oPrint:Say( nLinFim, 1250, "RG:", oFont10 ) // "RG:"
nLinFim += 45
oPrint:Say( nLinFim, 035 , "CPF:", oFont10 ) // "CPF:"
oPrint:Say( nLinFim, 1250, "CPF:", oFont10 ) // "CPF:"
nLinFim -= 45
oPrint:Line( nLinFim, 280 , nLinFim, 1100 ) // Linha Testemunha 1
oPrint:Line( nLinFim, 1490, nLinFim, 2300 ) // Linha Testemunha 2
/*------------------------------------------------------*/
oPrint:EndPage() // Finaliza página de impressão.
oPrint:Preview() // Preview do relatório.
RestArea( aArea ) // Retorna a área de trabalho.
Return .T. |
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas