Árvore de páginas

Versões comparadas

Chave

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

Este Ponto de Entrada é Válido a partir da Release 11.8

Chamada de 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:

Rotina

Nome Técnico

MNTA420

Ordem de Serviço Corretiva

Rotina(s) envolvida(s)

Nome Técnico

MNTA295

Distribuição de S.S.

MNTA410Ordem de Serviço Manual

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

Programa Fonte:

MNTA420.PRX

Função:

NGIMPOS()

Retorno:

Nome

Tipo

Descrição

Obrigatório

lRet

Lógico

Retorna verdadeiro ou falso para a execução e barra o processo.

Sim

 

Exemplo:


Bloco de código
languagesql
titleExemplo NGIMPOS
#include "rwmake.ch"


User Function NGIMPOS()


    Local ic := 0


    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
Não será possível imprimir a ordem de serviço devido a"+chr(13);


        +"problema na passagem de
parametro
 parâmetro para a
funcao de impressao
 função de impressão"+chr(13);


        +"(Ponto de entrada NGIMPOS)"+chr(13)+chr(13); 


        +"Consulte o suporte...","
NAO
NÃO CONFORMIDADE")


    Endif


Return .T.