Árvore de páginas

Descrição

Este ponto de entrada está localizado na rotina Base de Clientes (VEIVA340). Tem como finalidade a criação de uma opção no menu lateral da rotina. Ao compilar este ponto de entrada no ambiente, o nome da opção será exibida como Resumo de renda.

Observações

Exemplos

#Include "Protheus.ch"
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿±±
±±³Funcao ³ VA340RR ³ Autor ³ Thiago ³ Data ³ 05/06/13 ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ´±±
±±³Descricao ³ Resumo de renda. ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±
±±³Uso ³ VEIVA340 ³±±
±±ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
User Function VA340RR()

///Local cCodcli := ParamIXB1
Local aRR := {}
Local cAliasVMK := "SQLVMK"
Local cAliasVML := "SQLVML"
Local cAliasVMS := "SQLVMS"

M_RENAGR := 0 // Receita Agropecuária Bruta - RAB
M_OUTREN := 0 // Outras Receitas
M_RANOPB := 0 // Receita Operacional Bruta - ROB
cAno := Alltrim(str(year(ddatabase)-1))

cQuery := "SELECT VMK.VMK_PRODUC,VMK.VMK_VUNIVD "
cQuery += "FROM "
cQuery += RetSqlName( "VMK" ) + " VMK "
cQuery += "WHERE "
cQuery = "VMK.VMK_FILIAL='" xFilial("VMK")+ "' AND VMK.VMK_ANO = '"cAno"' AND VMK.VMK_CODCLI = '"SA1->A1_COD"' AND "
cQuery += "VMK.D_E_L_E_T_=' '"

dbUseArea( .T., "TOPCONN", TcGenQry(,,cQuery), cAliasVMK, .T., .T. )

Do While !( cAliasVMK )->( Eof() )

M_RENAGR += ( ( cAliasVMK )>VMK_PRODUC * ( cAliasVMK )>VMK_VUNIVD)

dbSelectArea(cAliasVMK)
( cAliasVMK )->(dbSkip())

Enddo
( cAliasVMK )->( dbCloseArea() )

cQuery := "SELECT VML.VML_ANIVDA,VML.VML_PRMDVD,VML.VML_OUTREC "
cQuery += "FROM "
cQuery += RetSqlName( "VML" ) + " VML "
cQuery += "WHERE "
cQuery = "VML.VML_FILIAL='" xFilial("VML")+ "' AND VML.VML_ANO = '"cAno"' AND VML.VML_CODCLI = '"SA1->A1_COD"' AND "
cQuery += "VML.D_E_L_E_T_=' '"

dbUseArea( .T., "TOPCONN", TcGenQry(,,cQuery), cAliasVML, .T., .T. )

Do While !( cAliasVML )->( Eof() )

M_RENAGR += ( (( cAliasVML )>VML_ANIVDA * ( cAliasVML )>VML_PRMDVD) + ( cAliasVML )->VML_OUTREC )

dbSelectArea(cAliasVML)
( cAliasVML )->(dbSkip())

Enddo
( cAliasVML )->( dbCloseArea() )

cQuery := "SELECT VMS.VMS_RECANO "
cQuery += "FROM "
cQuery += RetSqlName( "VMS" ) + " VMS "
cQuery += "WHERE "
cQuery = "VMS.VMS_FILIAL='" xFilial("VMS")+ "' AND VMS.VMS_ANO = '"cAno"' AND VMS.VMS_CODCLI = '"SA1->A1_COD"' AND "
cQuery += "VMS.D_E_L_E_T_=' '"

dbUseArea( .T., "TOPCONN", TcGenQry(,,cQuery), cAliasVMS, .T., .T. )

Do While !( cAliasVMS )->( Eof() )

M_OUTREN += (( cAliasVMS )->VMS_RECANO)

dbSelectArea(cAliasVMS)
( cAliasVMS )->(dbSkip())

Enddo
( cAliasVMS )->( dbCloseArea() )

M_RANOPB := M_RENAGR + M_OUTREN

Aadd(aRR,{"Renda Agropecuária Bruta",M_RENAGR})
Aadd(aRR,{"Outras Rendas",M_OUTREN})
Aadd(aRR,{"Renda Operacional Bruta",M_RANOPB})

DEFINE MSDIALOG oDlgF FROM 000,000 TO 028,054 TITLE "Resumo da Renda" OF oMainWnd

@ 010,005 SAY ("Código"+":") SIZE 50,8 OF oDlgF PIXEL COLOR CLR_BLUE // Codigo
@ 009,030 MSGET oCodCli VAR SA1->A1_COD PICTURE "@!" SIZE 35,08 OF oDlgF PIXEL COLOR CLR_BLUE WHEN .f.
@ 010,085 SAY ("Nome"+":") SIZE 50,8 OF oDlgF PIXEL COLOR CLR_BLUE // Nome
@ 009,110 MSGET oNomCli VAR SA1->A1_NOME PICTURE "@!" SIZE 100,08 OF oDlgF PIXEL COLOR CLR_BLUE WHEN .f.

@ 023,012 SAY "OBS: RAB (Renda Agropecuária Bruta) e ROB (Renda Operacional Bruta)" SIZE 350,8 OF oDlgF PIXEL COLOR CLR_BLUE
@ 033,012 SAY "se referem às receitas auferidas no ano anterior." SIZE 350,8 OF oDlgF PIXEL COLOR CLR_BLUE
@ 043,012 SAY "Quando estiver iniciando na Atividade, informar RAB projetada para a 1ª Safra." SIZE 350,8 OF oDlgF PIXEL COLOR CLR_BLUE

@ 055,003 LISTBOX oLbx1 FIELDS HEADER "Descrição","Valor" COLSIZES 140,20 SIZE 210,138 OF oDlgF PIXEL
oLbx1:SetArray(aRR)
oLbx1:bLine := { || {aRRnAt,1,;
FG_AlinVlrs(Transform(aRRnAt,2,"@E 999,999,999.99"))}}

DEFINE SBUTTON FROM 197,180 TYPE 2 ACTION (oDlgF:End()) ENABLE OF oDlgF

ACTIVATE MSDIALOG oDlgF CENTER

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

SA1->A1_COD = Código do Cliente posicionado.

Retorno

Eventos de chamada do Ponto de Entrada

//

aAdd(aOpcoes,{ 2 , STR0031 , "VC3" , "VEIVA340SA1(3,0) , VEICA580(SA1->A1_COD,'')" }) // Frota (frota do Cliente independente a LOJA)

If ExistBlock("VA340RR")

// |Tip| Descric | Opcao | Ponto de Entrada |

aAdd(aOpcoes,{ 3 , STR0033 , "PE" , "VEIVA340SA1(3,0) , ExecBlock('VA340RR',.f.,.f.,{SA1->A1_COD,''})" }) // Resumo da Renda

EndIf

//

VEIVA340SA1(0,0) // Levantar Clientes

//

Tip

Descric

Alias

Programa

Variáveis

Programa Fonte

VEIVA340.PRW

  • Sem rótulos