CONTEÚDO
Linha de Produto: | Microsiga Protheus® |
---|---|
Segmento: | Serviços |
Módulo: | Fiscal |
Este ponto de entrada encontra-se no fonte EDIMT.PRW e foi criado para filtrar quais manifestos deverão ser considerados no arquivo que será gerado. O Ponto de Entrada recebe um array contendo todos os manifestos da viagem selecionada no momento da geração do arquivo e retorna um array contendo os manifestos que devem ser considerados.
Parâmetros do ponto de Entrada:
Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|---|---|---|---|---|
aManif | Array of Record | Array contendo todos os Manifestos da Viagem | X |
Retorno:
Nome | Tipo | Descrição |
---|---|---|
aManif | Array | Array contendo apenas os Manifestos que devem ser considerados |
#include "RWMAKE.CH" #include "PROTHEUS.CH" User Function EDIMTMAN // Variaveis utilizadas na selecao de categorias Local oChkQual,lQual,oQual,cVarQLocal aTotMan := {} // Carrega bitmaps Local oOk := LoadBitmap( GetResources(), "LBOK") Local oNo := LoadBitmap( GetResources(), "LBNO") Local nForMan := 0 Alert ("Ponto de Entrada EDIMTMAN - Validado!!") For nForMan:= 1 To Len(ParamIxb) AADD(aTotMan,{.F.,ParamIxb[nForMan,1]}) Next nForMan DEFINE MSDIALOG oDlg TITLE OemToAnsi("Seleção de Manifestos") STYLE DS_MODALFRAME From 145,0 To 445,628 OF oMainWnd PIXEL oDlg:lEscClose := .F. @ 05,15 TO 125,300 LABEL OemToAnsi("Marque os Manifestos a serem considerados no processamento") OF oDlg PIXEL @ 15,20 CHECKBOX oChkQual VAR lQual PROMPT OemToAnsi("Inverte Seleção") SIZE 50, 10 OF oDlg PIXEL ON CLICK (AEval(aTotMan, {|z| z[1] := If(z[1]==.T.,.F.,.T.)}), oQual:Refresh(.F.)) @ 30,20 LISTBOX oQual VAR cVarQ Fields HEADER "",OemToAnsi("Manifesto"),OemToAnsi("Descrição") SIZE 273,090 ON DBLCLICK (aTotMan:=MtFClTroca(oQual:nAt,aTotMan),oQual:Refresh()) NoScroll OF oDlg PIXEL oQual:SetArray(aTotMan) oQual:bLine := { || {If(aTotMan[oQual:nAt,1],oOk,oNo),aTotMan[oQual:nAt,2]}} DEFINE SBUTTON FROM 134,240 TYPE 1 ACTION If(MtMCalOk(aTotMan,.T.,.T.),oDlg:End(),) ENABLE OF oDlg DEFINE SBUTTON FROM 134,270 TYPE 2 ACTION If(MtMCalOk(aTotMan,.F.,.T.),oDlg:End(),) ENABLE OF oDlg ACTIVATE MSDIALOG oDlg CENTERED aTotMan:= ProcManif(aTotMan) Return(aTotMan) Static Function MtMCalOk(aFilsCalc,lValidaArray,lMostraTela) Local lRet:=.F. Local nx:=0 Default lMostraTela := .T. If !lValidaArray aFilsCalc := {} lRet := .T.Else // Checa marcacoes efetuadas For nx:=1 To Len(aFilsCalc) If aFilsCalc[nx,1] lRet:=.T. EndIf Next nx // Checa se existe algum manifesto marcado na confirmacao If !lRet If lMostraTela Aviso(OemToAnsi("Atenção"),OemToAnsi("Deve ser selecionado ao menos um manifesto para o processamento."),{"Ok"}) EndIf EndIf EndIf Return lRet /*ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÚÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ¿±±±±³ Função ³ MtFClTroca ³±±±± ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ´±±±±³ Autor ³ Microsiga Software S/A ³ Data ³ 12/01/06 ³±±±± ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ ´±±±±³ Descrição ³ Troca marcador entre x e branco ³±±±± ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ´±±±±³ Parametros ³ ExpN1 = Linha onde o click do mouse ocorreu ³±±±± ³ ³ ExpA2 = Array com as opcoes para selecao ³±±±± ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ´±±±±³ Uso ³ Protheus 8.11 ³±±±± ÀÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Ù±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß*/ Static Function MtFClTroca(nIt,aArray) aArray[nIt,1] := !aArray[nIt,1] Return aArray /*ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ÚÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ¿±±±±³ Função ³ ProcManif ³±±±± ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ´±±±±³ Autor ³ Microsiga Software S/A ³ Data ³ 12/01/06 ³±±±± ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ ´±±±±³ Descrição ³ Manifestos que devem ser processados ³±±±± ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ´±±±±³ Parametros ³ ExpN1 = Array com todos os manifestos ³±±±± ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ´±±±±³ Uso ³ Protheus 8.11 ³±±±± ÀÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Ù±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß*/ Static Function ProcManif(aTotMan) Local nForManif := 0 Local aManifOK := {} For nForManif := 1 To Len(aTotMan) If aTotMan[nForManif,1] AADD(aManifOK,aTotMan[nForManif,2]) EndIf Next nForManif Return aManifOK |
Não há.