Tiempo aproximado de lectura: 00:05:00 min
Ocurrencia
Cual es el Punto de entrada ejecutado en la rutina MNTA700 que llama a la validación del campo TQQ_CODMOT cuando el cliente no utiliza CPF del conductor como condicional para abastecimiento ?
Ambiente
TOTVS Manufactura - Totvs Manufactura (Línea Protheus) MI - Inspección de entradas (SIGAQIE) - Todas las versiones 12
Solución
#Include 'Protheus.ch' #Include 'MNTA700.ch' //Programa que utilizará o codigo do motorista ao invés do CPF User Function MNTA7001() Local lRetVh := .T. Local aAreaM := GetArea() Local dDemissao := Ctod(' / / ' ) dbSelectArea('DA4') dbSetOrder(1) If dbSeek(xFilial('DA4')+M->TQQ_CODMOT) If DA4->DA4_TIPMOT == '1' dbSelectArea('SRA') dbSetOrder(13) dbSeek(DA4->DA4_COD) While !Eof() .And. SRA->RA_MAT == DA4->DA4_COD If Empty(SRA->RA_DEMISSA) dDemissao := Ctod(' / / ') Exit EndIf If SRA->RA_DEMISSA > dDemissao dDemissao := SRA->RA_DEMISSA EndIf dbSelectArea("SRA") dbSkip() End If !Empty(dDemissao) .And. dDemissao < M- >TQQ_DTABAS Help(' ', 1, STR0042, , STR0045+Chr(13)+STR0044, 3, 1) lRetVh := .F. EndIf If DA4->DA4_TIPMOT == '2' Help(' ', 1, STR0042, , STR0046, 3, 1) lRetVh := .F. EndIf If DA4->DA4_TIPMOT == '3' Help(' ', 1, STR0042, , STR0046, 3, 1) lRetVh := .F. EndIf dbSelectArea('SR8') dbSetOrder(1) dbSeek(xFilial('SR8')+DA4->DA4_COD) If SR8->R8_TIPO = 'F' If M->TQQ_DTABAS > SR8->R8_DATAINI .And. M->TQQ_DTABAS < SR8- >R8_DATAFIM Help(' ', 1, STR0042, , STR0047, 3, 1) lRetVh := .F. EndIf EndIf EndIf Else MsgInfo( STR0048, STR0036) lRetVh := .F. EndIf RestArea(aAreaM) Return lRetVh |
0 Comentarios