Histórico da Página
Aviso |
---|
Este Ponto de Entrada é Válido a partir da Release 11.8 |
Chamada de um relatório especifico do cliente ou mesmo padrão para a impressão de Ordem de Serviço.
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 chamado após a geração de uma Ordem de Serviço com situação de liberada, tem o objetivo de fazer a chamada de um relatório específico do cliente ou mesmo padrão para a impressão da Ordem de Serviço que foi inclusa. | ||||||||
Localização: | SIGAMNT: Atualizações/Ordens de Serviço/Corretiva | ||||||||
Eventos:Geração de Ordem de Produção (MNTUTIL) | [ TAINÃ] | ||||||||
Programa Fonte: | MNTUTILMNTA420.PRX | ||||||||
Função: | NGMOVSD3NGIMPOS() | ||||||||
Retorno: | [ TAINÃ]
|
Exemplo:
#include 'protheus"rwmake.ch'
#include 'parmtype.ch'"
User Function NGMOVSD3NGIMPOS()
Local aFields ic := aClone(Paramixb)
Local nPos// Alterando o valor de um campo já passa na geração de OP
If ( nPos := aScan(aFields, {|x| x[1] == 'D3_DOC' }) ) > 0
aFields[nPos][2] := GetSxENum("SD3", "D3_DOC")
EndIf
Return aFields0
If Type("ParamIxb") = "A"
DbSelectArea("STJ")
cOldAlias := Alias()
nOldIndex := IndexOrd()
nRegImpSTJ := Recno()
If MSGYESNO("Deseja Imprimir a O.S.?","ATENCAO")
aMATSX1 := {{'01',ParamIxb[1]},;
{'06',Space(Len(stj->tj_ccusto))},;
{'07',Replicate('Z',Len(stj->tj_ccusto))},;
{'08',Space(Len(stj->tj_centrab))},;
{'09',Replicate('Z',Len(stj->tj_centrab))},;
{'10',Space(Len(stj->tj_codarea))},;
{'11',Replicate('Z',Len(stj->tj_codarea))},;
{'12',ParamIxb[2]},;
{'13',ParamIxb[2]},;
{'14',Dtoc(ParamIxb[3])},;
{'15',Dtoc(ParamIxb[3])}}
For ic := 1 To Len(aMATSX1)
DbSelectArea("SX1")
DbsetOrder(1)
DbSeek("MNT675 "+aMATSX1[ic][1])
RecLock("SX1",.F.)
SX1->X1_CNT01 := aMATSX1[ic][2]
MsUnlock("SX1")
Next ic
If ExistBlock("MNTIMPOS")
ExecBlock("MNTIMPOS",.F.,.F.,ParamIxb)
Else
MNTR675(.f.)
Endif
EndIf
DbSelectArea(cOldAlias)
DbSetOrder(nOldIndex)
DbGoto(nRegImpSTJ)
Else
MsgInfo("Nao sera possivel imprimir a ordem de servico devido a"+chr(13);
+"problema na passagem de parametro para a funcao de impressao"+chr(13);
+"(Ponto de entrada NGIMPOS)"+chr(13)+chr(13);
+"Consulte o suporte...","NAO CONFORMIDADE")
Endif
Return .T.