Árvore de páginas

Descrição

Este Ponto de Entrada é utilizado para possibilitar customizar a Impressão dos Clientes por Região e será apresentado no momento da Impressão dos Clientes por Região (VEICM550).

Observações

 

Exemplos

/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³ VCM550IC º Autor ³ Andre Luis Almeida º Data ³ 06/10/15 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDescricao ³ Impressao CUSTOMIZADA do VEICM550 º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
User Function VCM550IC()
Local cT := ParamIXB[01] // Titulo
Local lOk := .f.
Local ni := 0
Local cDtVisit := ""

If SM0->M0_CODIGO == "09" // EMPRESA 09
cabec1 := " Cliente CPF/CNPJ Cidade-UF Fone E-mail Cadastro Segmento Vendedores"
EndIf
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1

IncProc( ( "Impressão dos Clientes "+cT+"..." ) )

If lEndCli .or. lFroCli .or. lAgeCli .or. lConCli .or. lPerCli
@ nLin++ , 00 psay repl("-",220)
EndIf

For ni:=1 to Len(aClientes)
If aClientes[ni,nT] .and. ( aClientes[ni,9] >= cCEPIni .and. aClientes[ni,9] <= cCEPFin )
nTotCli++
If nLin >= 62
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1
@ nLin++ , 00 psay repl("-",220)
EndIf
cDtVisit := space(39)
DbSelectArea("VC1")
DbSetOrder(7)
DbSeek(xFilial("VC1")+ aClientes[ni,10] + "9999" ,.T.)
If !Bof() .and. ( VC1->VC1_CODCLI+VC1->VC1_LOJA # aClientes[ni,10] )
DbSelectArea("VC1")
DbSkip(-1)
EndIf
While !Bof() .and. VC1->VC1_FILIAL == xFilial("VC1") .and. ( VC1->VC1_CODCLI+VC1->VC1_LOJA == aClientes[ni,10] )
If Empty(cAgendas) .or. VC1->VC1_TIPAGE $ cAgendas
If !Empty(VC1->VC1_DATVIS)
cDtVisit := left(Transform(VC1->VC1_DATVIS,"@D"),6)+right(Transform(VC1->VC1_DATVIS,"@D"),2)
cDtVisit += " "+Transform(dDataBase-VC1->VC1_DATVIS,"@E 99999")
SA3->(DbSetOrder(1))
SA3->(MsSeek(xFilial("SA3")+VC1->VC1_CODVEN))
cDtVisit += " "+VC1->VC1_CODVEN+"-"+left(SA3->A3_NOME,17)
Exit
EndIf
EndIf
DbSelectArea("VC1")
DbSkip(-1)
EndDo
If SM0->M0_CODIGO == "09" // EMPRESA 09
cPrintVend := ""
If cVend == "Todos"
cPrintVend := "Vei:"+left(aClientes[ni,16],6)+" Pec:"+left(aClientes[ni,17],6)+" Srv:"+left(aClientes[ni,18],6)
ElseIf cVend == "Veiculos" .or. cVend == "Veículos"
cPrintVend := "Vei:"+left(aClientes[ni,16],28)
ElseIf cVend == "Pecas" .or. cVend == "Peças"
cPrintVend := "Pec:"+left(aClientes[ni,17],28)
ElseIf cVend == "Servicos" .or. cVend == "Serviços"
cPrintVend := "Srv:"+left(aClientes[ni,18],28)
EndIf
@ nLin++ , 00 psay IIf(aClientes[ni,11],"* "," ")+left(left(aClientes[ni,10],SA1->(TamSx3("A1_COD")[1]))+"-"+right(aClientes[ni,10],SA1->(TamSx3("A1_LOJA")[1]))+" "+aClientes[ni,4],40)+" "+aClientes[ni,3]+" "+left(aClientes[ni,5]+space(25),25)+" "+aClientes[ni,6]+" "+aClientes[ni,13]+" "+aClientes[ni,14]+" "+aClientes[ni,12]+" "+cPrintVend
Else
@ nLin++ , 00 psay IIf(aClientes[ni,11],"* "," ")+left(left(aClientes[ni,10],SA1->(TamSx3("A1_COD")[1]))+"-"+right(aClientes[ni,10],SA1->(TamSx3("A1_LOJA")[1]))+" "+aClientes[ni,4],40)+" "+aClientes[ni,3]+" "+left(aClientes[ni,5]+space(25),25)+" "+cDtVisit+" "+aClientes[ni,6]+" "+aClientes[ni,12]+" "+aClientes[ni,13]+" "+aClientes[ni,14]
EndIf
If lEndCli
@ nLin++ , 05 psay aClientes[ni,7]+" "+aClientes[ni,8]+" CEP: "+aClientes[ni,9]+Space(62)+"Grupo Economico "+aClientes[ni,15]
EndIf
If lAgeCli
FS_IMP_AGEND(aClientes[ni,10])
EndIf
FS_IMP_FROTA(aClientes[ni,10])
If lConCli
FS_IMP_CONTA(aClientes[ni,10])
EndIf
If lPerCli
FS_IMP_PERIO(aClientes[ni,10])
EndIf
If lEndCli .or. lFroCli .or. lAgeCli .or. lConCli .or. lPerCli
@ nLin++ , 00 psay repl("-",220)
EndIf
EndIf
Next

IncProc( ( "Concluindo Impressão dos Clientes "+cT+"..." ) )
nLin++
nLin++
nLin++
If nLin >= 50
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1
nLin++
EndIf
@ nLin++ , 20 psay "**************** R E S U M O - T O T A L G E R A L ****************"
nLin++
If !Empty(Alltrim(cRegiao))
@ nLin++ , 27 psay " - Cidades da Região "+cRegiao+"..............................................:" + str(nTotCid,8)
Else
@ nLin++ , 27 psay " - Cidades.............."+"..............................................:" + str(nTotCid,8)
EndIf
@ nLin++ , 27 psay " - Cidades Selecionadas...............................................:" + str(len(aCidades),8)
@ nLin++ , 27 psay " - Clientes das Cidades Selecionadas..................................:" + str(len(aClientes),8)
@ nLin++ , 27 psay " - Clientes " + left(cT+repl(".",13),13)+".............................................:" + str(nTotCli,8)
@ nLin++ , 27 psay " - Clientes " + left(cT+" com Frota"+repl(".",23),23)+"...................................:" + Str(nTotFroC,8)
@ nLin++ , 27 psay " - Frota dos Clientes " + left(cT+repl(".",13),13)+"...................................:" + Str(nTotFroT,8)
If lFroCli .and. Len(aResumo) > 0
aSort(aResumo,1,,\{|x,y| x[2]+x[1] < y[2]+y[1] \})
For ni:=1 to Len(aResumo)
If nLin >= 62
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1
nLin++
EndIf
@ nLin++ , 32 psay aResumo[ni,1]+aResumo[ni,2]+" "+str(aResumo[ni,3],8)
Next
EndIf

Ms_Flush()
Set Printer to
Set Device to Screen

If aReturn[5] == 1
OurSpool( cNomeRel )
EndIf

Return()

/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿±±
±±³Funcao ³ FS_IMP_AGEND³ Autor ³ Andre Luis Almeida ³ Data ³ 07/10/15 ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ´±±
±±³Descri‡„o ³ Impressao da Agenda ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function FS_IMP_AGEND(cSeek)
Local lImpCab := .t.
Local cQAlAge := "SQLVC1"
cQuery := "SELECT VC1.VC1_DATVIS , VC1.VC1_TIPAGE , VC1.VC1_DATAGE , VC1.VC1_CODVEN , VC5.VC5_DTPAGE , SA3.A3_NOME "
cQuery += "FROM "+RetSqlName("VC1")+" VC1 , "+RetSqlName("VC5")+" VC5 , "+RetSqlName("SA3")+" SA3 "
cQuery += "WHERE VC1.VC1_FILIAL='"+xFilial("VC1")+"' AND VC1.VC1_CODCLI='"+left(cSeek,SA1->(TamSx3("A1_COD")[1]))+"' AND VC1.VC1_LOJA='"+right(cSeek,SA1->(TamSx3("A1_LOJA")[1]))+"' AND "
cQuery += "VC5.VC5_FILIAL='"+xFilial("VC5")+"' AND VC1.VC1_TIPAGE=VC5.VC5_TIPAGE AND "
cQuery += "SA3.A3_FILIAL='"+xFilial("SA3")+"' AND VC1.VC1_CODVEN=SA3.A3_COD AND "
cQuery += "VC1.D_E_L_E_T_=' ' AND VC5.D_E_L_E_T_=' ' AND SA3.D_E_L_E_T_=' ' "
dbUseArea( .T., "TOPCONN", TcGenQry( ,, cQuery ), cQAlAge , .F., .T. )
Do While !( cQAlAge )->( Eof() )
If Empty(( cQAlAge )->( VC1_DATVIS ))
If lImpCab
lImpCab := .f.
If nLin >= 60
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1
EndIf
nLin++
@ nLin++,44 PSAY "Agenda: Tipo Dt.Visit Vendedor"
EndIf
If nLin >= 62
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1
nLin++
EndIf
@nLin++,52 PSAY ( cQAlAge )->( VC1_TIPAGE ) +" - "+ left(( cQAlAge )->( VC5_DTPAGE ),12)+" "+left(Transform(stod(( cQAlAge )->( VC1_DATAGE )),"@D"),6)+right(Transform(stod(( cQAlAge )->( VC1_DATAGE )),"@D"),2)+" "+( cQAlAge )->( VC1_CODVEN)+" - "+( cQAlAge )->( A3_NOME )
EndIf
( cQAlAge )->( DbSkip() )
EndDo
( cQAlAge )->( dbCloseArea() )
Return()


/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿±±
±±³Funcao ³ FS_IMP_FROTA³ Autor ³ Andre Luis Almeida ³ Data ³ 07/10/15 ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ´±±
±±³Descri‡„o ³ Impressao da Frota ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function FS_IMP_FROTA(cSeek)
Local nPos := 0
Local cQAlFro := "SQLVC3"
cQuery := "SELECT VC3.VC3_QTDFRO , VC3.VC3_CODMAR , VC3.VC3_MODVEI , VC3.VC3_FABMOD, VC3.VC3_DATATU FROM "+RetSqlName("VC3")+" VC3 "
cQuery += "WHERE VC3.VC3_FILIAL='"+xFilial("VC3")+"' AND VC3.VC3_CODCLI='"+substr(cSeek,1,6)+"' AND VC3.VC3_LOJA='"+substr(cSeek,7,2)+"' AND VC3.D_E_L_E_T_=' ' "
dbUseArea( .T., "TOPCONN", TcGenQry( ,, cQuery ), cQAlFro , .F., .T. )
If !( cQAlFro )->( Eof() )
If lFroCli
If nLin >= 60
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1
EndIf
nLin++
@ nLin++,44 PSAY "Frota.: Qtd Marca/Modelo Veiculo Fabr/Mod. Dt.Atualiz"
EndIf
nFroCli := 0
Do While !( cQAlFro )->( Eof() )
If lFroCli
If nLin >= 62
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1
EndIf
@nLin++,52 PSAY Str(( cQAlFro )->( VC3_QTDFRO ),3)+" "+( cQAlFro )->( VC3_CODMAR )+" "+substr(( cQAlFro )->( VC3_MODVEI ),1,20)+" "+Posicione("VV2",1,xFilial("VV2")+( cQAlFro )->( VC3_CODMAR )+( cQAlFro )->( VC3_MODVEI ),"VV2_DESMOD")+" "+Transform(( cQAlFro )->( VC3_FABMOD ),"@R 9999/9999")+" "+DtoC(Stod(( cQAlFro )->( VC3_DATATU )))
nPos := 0
nPos := ascan(aResumo,\{|x| x[1]+x[2] == ( cQAlFro )->( VC3_CODMAR )+" "+substr(( cQAlFro )->( VC3_MODVEI ),1,20)+" "+VV2->VV2_DESMOD+" "+Transform(( cQAlFro )->( VC3_FABMOD ),"@R 9999/9999") \})
If nPos == 0
Aadd(aResumo,\{ ( cQAlFro )->( VC3_CODMAR )+" "+substr(( cQAlFro )->( VC3_MODVEI ),1,20)+" "+VV2->VV2_DESMOD+" " , Transform(( cQAlFro )->( VC3_FABMOD ),"@R 9999/9999") , ( cQAlFro )->( VC3_QTDFRO ) \} )
Else
aResumo[nPos,3] += ( cQAlFro )->( VC3_QTDFRO )
Endif
EndIf
nFroCli += ( cQAlFro )->( VC3_QTDFRO )
( cQAlFro )->( DbSkip() )
EndDo
nTotFroC++
nTotFroT += nFroCli
If lFroCli
@ nLin++,44 PSAY "Total.:" + Str(nFroCli,4)
EndIf
EndIf
( cQAlFro )->( dbCloseArea() )
Return()

/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿±±
±±³Funcao ³ FS_IMP_CONTA³ Autor ³ Andre Luis Almeida ³ Data ³ 07/10/15 ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ´±±
±±³Descri‡„o ³ Impressao das Pessoas de Contato (VC2) ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function FS_IMP_CONTA(cSeek)
Local cQAlCon := "SQLVC2"
Local cImpres := left("Pessoas de Contato:"+space(22),22)
cQuery := "SELECT VC2.VC2_NOMCON , VC2.VC2_CARCON , VC2.VC2_ASSUNT , VC2.VC2_DDDCEL , VC2.VC2_TELCEL , VC2.VC2_EMAILC FROM "+RetSqlName("VC2")+" VC2 "
cQuery += "WHERE VC2.VC2_FILIAL='"+xFilial("VC2")+"' AND VC2.VC2_CODCLI='"+left(cSeek,SA1->(TamSx3("A1_COD")[1]))+"' AND VC2.VC2_LOJA='"+right(cSeek,SA1->(TamSx3("A1_LOJA")[1]))+"' AND VC2.D_E_L_E_T_=' ' "
dbUseArea( .T., "TOPCONN", TcGenQry( ,, cQuery ), cQAlCon , .F., .T. )
If !( cQAlCon )->( Eof() )
Do While !( cQAlCon )->( Eof() )
If nLin >= 62
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1
EndIf
@nLin++,12 PSAY cImpres+( cQAlCon )->( VC2_NOMCON )+" - "+( cQAlCon )->( VC2_CARCON )+space(8)+" ( "+left(X3CBOXDESC("VC2_ASSUNT",( cQAlCon )->( VC2_ASSUNT ))+" ) "+space(30),30)+" "+left(Alltrim(( cQAlCon )->( VC2_DDDCEL ))+" "+( cQAlCon )->( VC2_TELCEL )+space(40),40)+( cQAlCon )->( VC2_EMAILC )
cImpres := space(22)
( cQAlCon )->( DbSkip() )
EndDo
EndIf
( cQAlCon )->( dbCloseArea() )
Return()

/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿±±
±±³Funcao ³ FS_IMP_PERIO³ Autor ³ Andre Luis Almeida ³ Data ³ 07/10/15 ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ´±±
±±³Descri‡„o ³ Periodicidade/Vendedores do cliente ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function FS_IMP_PERIO(cSeek)
Local cQAlPer := "SQLVCF"
Local cImpres := left("Periodicidade:"+space(18),18)
cQuery := "SELECT VCF.VCF_VENPEC , VCF.VCF_DIAPEP , VCF.VCF_VENVEI , VCF.VCF_DIAPER , VCF.VCF_VENSRV , VCF.VCF_DIAPES FROM "+RetSqlName("VCF")+" VCF "
cQuery += "WHERE VCF.VCF_FILIAL='"+xFilial("VCF")+"' AND VCF.VCF_CODCLI='"+left(cSeek,SA1->(TamSx3("A1_COD")[1]))+"' AND VCF.VCF_LOJCLI='"+right(cSeek,SA1->(TamSx3("A1_LOJA")[1]))+"' AND VCF.D_E_L_E_T_=' ' "
dbUseArea( .T., "TOPCONN", TcGenQry( ,, cQuery ), cQAlPer , .F., .T. )
If !( cQAlPer )->( Eof() )
If nLin >= 62
nLin := cabec(ctitulo,cabec1,cabec2,cnomprog,ctamanho,nCaracter) + 1
EndIf
If cVend == "Todos" .or. cVend == "Pecas" .or. cVend == "Peças" // Todos ou Pecas
If ( cQAlPer )->( VCF_DIAPEP ) > 0 .or. !Empty(( cQAlPer )->( VCF_VENPEC ))
@nLin++,12 PSAY cImpres+left("Peças"+space(10),10)+" "+right(str(( cQAlPer )->( VCF_DIAPEP )),3)+" dia(s) Vendedor: "+( cQAlPer )->( VCF_VENPEC )+" - "+left(FM_SQL("SELECT A3_NOME FROM "+RetSqlName("SA3")+" WHERE A3_FILIAL='"+xFilial("SA3")+"' AND A3_COD='"+( cQAlPer )->( VCF_VENPEC )+"' AND D_E_L_E_T_=' '"),20)
cImpres := space(18)
EndIf
EndIf
If cVend == "Todos" .or. cVend == "Veiculos" .or. cVend == "Veículos" // Todos ou Veiculos
If ( cQAlPer )->( VCF_DIAPER ) > 0 .or. !Empty(( cQAlPer )->( VCF_VENVEI ))
@nLin++,12 PSAY cImpres+left("Veículos"+space(10),10)+" "+right(str(( cQAlPer )->( VCF_DIAPER )),3)+" dia(s) Vendedor: "+( cQAlPer )->( VCF_VENVEI )+" - "+left(FM_SQL("SELECT A3_NOME FROM "+RetSqlName("SA3")+" WHERE A3_FILIAL='"+xFilial("SA3")+"' AND A3_COD='"+( cQAlPer )->( VCF_VENVEI )+"' AND D_E_L_E_T_=' '"),20)
cImpres := space(18)
EndIf
EndIf
If cVend == "Todos" .or. cVend == "Servicos" .or. cVend == "Serviços" // Todos ou Oficina
If ( cQAlPer )->( VCF_DIAPES ) > 0 .or. !Empty(( cQAlPer )->( VCF_VENSRV ))
@nLin++,12 PSAY cImpres+left("Serviços"+space(10),10)+" "+right(str(( cQAlPer )->( VCF_DIAPES )),3)+" dia(s) Vendedor: "+( cQAlPer )->( VCF_VENSRV )+" - "+left(FM_SQL("SELECT A3_NOME FROM "+RetSqlName("SA3")+" WHERE A3_FILIAL='"+xFilial("SA3")+"' AND A3_COD='"+( cQAlPer )->( VCF_VENSRV )+"' AND D_E_L_E_T_=' '"),20)
cImpres := space(18)
EndIf
EndIf
EndIf
( cQAlPer )->( dbCloseArea() )
Return()

Preview

Veja também

 

Idioma

Português(Brasil)

Versões

Todas

Sistemas Operacionais Suportados

Todos

Compatível com as Bases de Dados

Todas

Updates

 

Parâmetros

cT = Titulo

Retorno

 

Eventos de chamada do Ponto de Entrada

....
cNomeRel := SetPrint(cAlias,cNomeRel,,@cTitulo,cDesc1,cDesc2,cDesc3,.f.,,.t.,cTamanho)
If nLastKey == 27
Return
EndIf
SetDefault(aReturn,cAlias)
Set Printer to &cNomeRel
Set Printer On
Set Device to Printer
If cOrdRel == STR0042
aSort(aClientes,1,,\{|x,y| x[5]+x[4] < y[5]+y[4] \}) // "Cidade + Nome"
ElseIf cOrdRel == STR0043
aSort(aClientes,1,,\{|x,y| x[5]+x[9]+x[7] < y[5]+y[9]+y[7] \}) // "Cidade + CEP + Endereco"
Else
aSort(aClientes,1,,\{|x,y| x[5]+x[8]+x[7] < y[5]+y[8]+y[7] \}) // "Cidade + Bairro + Endereco"
EndIf

If ExistBlock("VCM550IC") // IMPRESSAO CUSTOMIZADA

ExecBlock("VCM550IC",.f.,.f.,\{ cT \})

Else
....

Variáveis

 

Programa Fonte

VEICM550

  • Sem rótulos