Jump to content
Fivewin Brasil

Skineth

Membros
  • Posts

    33
  • Joined

  • Last visited

Everything posted by Skineth

  1. Skineth

    VRMM

    Amigos Sou novato em Fivewin e tenho algumas dúvidas. O que é VRMM e para que serve? Grato pela a orientação. Cesar Clipper5.3, Blinker7.0, FWH25 para clipper
  2. Skineth

    VRMM

    Amigos Sou novato em Fivewin e tenho algumas dúvidas. O que é VRMM e para que serve? Grato pela a orientação. Cesar Clipper5.3, Blinker7.0, FWH25 para clipper
  3. Amigos desculpa novamente em reportar a minha dúvida. No meu Sistema está chamando uma TCBROWSE, precisei incluir um novo Dialogo, pois constatei que estava faltando, até aqui tudo bem. Como vejo se após incluir o Dialogo, não está chamando uma TSBROWSE ou TWBROSE, e se está faltando recursos. Cesar Clipper5.3, Blinker7.0, FWH25 para clipper
  4. Amigos Ainda sou novo em Fivewin e WorkShop, precisei incluir no WS um novo Dialogo e após compilar o Sistema apareceu a seguinte mensagem: Aplicação ================= Nome e Caminho: C:\LOCAD\LOCAD.EXE Tamanho: 1,963,968 bytes Maximo de arquivos avertos: (SetHandleCount()) 250 Ocorreu erro em: 11/01/2007, 22:28:18 Descricao: Erro FiveWin/1 Non defenid Id: No: 50 Chamadas ao Stack =================== CHAMADA DE ESTFILTER(1352) CHAMADA DE (b)ESTOQ(95) CHAMADA DE ESTOQ(110) CHAMADA DE (b)BUILDMENU(182) CHAMDA DE MAIN(105) Pergunta: Porque ocorreu essa mensagem e como resolvo? Agradeço pela a ajuda e orientação. Atenciosamente, id=green>id=black> Cesar Clipper5.3, Blinker7.0, FWH25 para clipper
  5. Amigos Ainda sou novo em Fivewin e WorkShop, precisei incluir no WS um novo Dialogo e após compilar o Sistema apareceu a seguinte mensagem: Aplicação ================= Nome e Caminho: C:\LOCAD\LOCAD.EXE Tamanho: 1,963,968 bytes Maximo de arquivos avertos: (SetHandleCount()) 250 Ocorreu erro em: 11/01/2007, 22:28:18 Descricao: Erro FiveWin/1 Non defenid Id: No: 50 Chamadas ao Stack =================== CHAMADA DE ESTFILTER(1352) CHAMADA DE (b)ESTOQ(95) CHAMADA DE ESTOQ(110) CHAMADA DE (b)BUILDMENU(182) CHAMDA DE MAIN(105) Pergunta: Porque ocorreu essa mensagem e como resolvo? Agradeço pela a ajuda e orientação. Atenciosamente, id=green>id=black> Cesar Clipper5.3, Blinker7.0, FWH25 para clipper
  6. Caro Amigo Renato tenta desta forma: FUNCTION ChkMovCX(nEnHoje, nSaHoje) Local aFormPG:={} AADD(aFormPg,{aFormPg[ 2],aFormPg[ 3], até aFormPg[10]}) Qualquer coisa, é só postar suas dúvidas. Cesar Clipper5.3, Blinker7.0, FWH25 para clipper
  7. Amigos agradeço pela a ajuda, postei a função onde dá o erro logo abaixo. Observação: estou começando em Fivewin. static function FechaMovim(nCodPr,mLista,oLbx,mDlg,nTotPed,nVrDin,mTrc,mQtd,mCdVenda,nTabela) LOCAL nDvlr, nDper, lGoOn, oTcoFont, nTotParc IF nTotPed <= 0 MsgAlert(OemToAnsi("NÆo ‚ poss¡vel efetuar fechamento de movimento zerado!"),"Erro") RETURN .f. ENDIF IF lKf return .f. ENDIF lKf := .t. nDesc := 0.00 IF LEFT(vIt10,5) = OemToAnsi("VENDA") nTCdes := nTotPed nDvlr := 0.00 nDper := 0.00 nVlrTot1 := nTCdes nVlrTot2 := 0 nVlrTot3 := 0 nVlrTot4 := 0 nVlrTot5 := 0 nVlrTot6 := 0 nVlrTot7 := 0 nVlrTot8 := 0 nVlrTot9 := 0 nVlrTot0 := 0 whil .t. lConfr := .F. lCredi := .F. nTotParc := 0 DEFINE FONT oTcoFont NAME "Arial" SIZE 0, -40 DEFINE DIALOG oDlFim RESOURCE "VENDAFIM" REDEFINE GET o1Get VAR nVlrTot1 PICTURE "@E 99,999.99" ID 43 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET o2Get VAR nVlrTot2 PICTURE "@E 99,999.99" ID 45 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET o3Get VAR nVlrTot3 PICTURE "@E 99,999.99" ID 47 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET o4Get VAR nVlrTot4 PICTURE "@E 99,999.99" ID 48 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET o5Get VAR nVlrTot5 PICTURE "@E 99,999.99" ID 49 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET o6Get VAR nVlrTot6 PICTURE "@E 99,999.99" ID 44 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET o7Get VAR nVlrTot7 PICTURE "@E 99,999.99" ID 50 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET o9Get VAR nVlrTot9 PICTURE "@E 99,999.99" ID 52 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET o0Get VAR nVlrTot0 PICTURE "@E 99,999.99" ID 53 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET o8Get VAR nVlrTot8 PICTURE "@E 99,999.99" ID 51 OF oDlFim UPDATE VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET oDget2 VAR nDvlr PICTURE "@E 999,999.99" ID 37 OF oDlFim WHEN nDper = 0 VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE GET oDget3 VAR nDper PICTURE "@E 99.99" ID 35 OF oDlFim WHEN nDvlr = 0 VALID MovCalc(@mTrc,oTrco,nVlrTot1,nVlrTot2,nVlrTot3,nVlrTot4,nVlrTot5,nVlrTot6,nVlrTot7,nVlrTot8,nVlrTot9,nVlrTot0,nDesc,@nTCdes,mDlg, nDvlr, nDper) REDEFINE SAY oTrco PROMPT "R$ "+ALLTRIM(TRANS(mTrc,"@E 99,999.99")) ID 33 OF oDlFim COLORS BrwText, BrwBack oTrco:SetFont(oTcoFont) REDEFINE BUTTON oBtn ID 38 OF oDlFim ACTION (lConfr:=.T., oDlFim:End()) DEFAULT ACTIVATE DIALOG oDlFim nDesc := (nTotPed - nTCdes) oTcoFont:End() IF ! lConfr nDesc := 0 nTCdes := nTotPed nVlrTot1 := 0 nVlrTot2 := 0 nVlrTot3 := 0 nVlrTot4 := 0 nVlrTot5 := 0 nVlrTot6 := 0 nVlrTot7 := 0 nVlrTot8 := 0 nVlrTot9 := 0 nVlrTot0 := 0 oSayTot:Refresh() oSayPgo:Refresh() oSayTrc:Refresh() mDlg:UpDate() lKf := .F. RETURN .f. ENDIF nTotParc := nVlrTot1+nVlrTot2+nVlrTot3+nVlrTot4+nVlrTot5+nVlrTot6+nVlrTot7+nVlrTot8+nVlrTot9+nVlrTot0 IF nTotParc = 0 MsgAlert("Informe o valor pago!",OemToAnsi("Aten‡Æo!")) LOOP ENDIF IF nTotParc < nTotPed nDesc := nTotPed-nTotParc ENDIF cMsg := "" IF mTrc > 0 cMsg += "Troco: R$ "+ALLTRIM(TRANS(mTrc,"@E 999,999.99"))+CRLF ENDIF IF nDesc > 0 cMsg += "Desconto: R$ "+ALLTRIM(TRANS(nDesc,"@E 999,999.99"))+CRLF ENDIF vIt34 := nVlrTot3+nVlrTot4+nVlrTot5+nVlrTot6 *IF MsgYesNo(cMsg+CRLF+OemToAnsi("Confirma o fechamento?"),"Confirmar") IF lConfr EXIT ENDIF END ENDIF lKf := .f. MsgRun(OemToAnsi("Salvando o movimento"), "Aguarde...",{|| SalvaVnd(@mCdVenda,@mLista,nTabela,oLbx,mDlg) }) MsgRun(OemToAnsi("Atualizando estoque e movimento geral..."), "Aguarde...",{|| BaixaEst(nTabela) }) MsgRun(OemToAnsi("Efetuando lan‡amentos."), "Aguarde...",{|| LancCaix(nTotPed, mCdVenda, nTabela) }) Atualiza(mCdVenda, @mLista, @nTotPed, @nVrDin, @mTrc, oLbx, mDlg, nTabela) IF MsgYesNo("Gostaria de imprimir o comprovante?","Imprimir?") MsgRun(OemToAnsi("Imprimindo..."), "Aguarde...",{|| Imprimir(mLista,nTotPed,nVrDin,mTrc) }) ENDIF LogReg(nOper,cOper,"RECEBEU R$ "+ALLTRIM(TRANS(nTotParc-mTrc,"@E 999,999.99"))+" REF. VENDA "+ALLTRIM(STR(mCdVenda))+" ("+cTodos+")", nTotParc-mTrc, "VENDA", mCdVenda) nTotPed := 0; nVrDin:=0; nCodPr:=0; mLista:={}; nDesc := 0 MsgRun(OemToAnsi("Atualizando movimento..."), "Aguarde...",{||(ZapFile(),MovVarl(nTabela), Atualiza(mCdVenda, @mLista, @nTotPed, @nVrDin, @mTrc, oLbx, mDlg, nTabela)) }) return .t. Cesar Clipper5.3, Blinker7.0, FWH25 para clipper
  8. Caros amigos O que pode causar esse erro? Como resolver? Aplicacao ========== Nome e Caminho: C:\LOCARODA\LOCADORA.EXE Tamanho: 1,951,360 bytes Maximo de arquivos abertos: ( SetHandleCount() ) 150 Ocorreu erro em: 09/01/2007, 10:29:22 Descricao: Erro BASE/1082 Argument error: - Args: [ 1] = U [ 2] = N 0 Chamadas ao Stack ================= CHAMADA DE FECHAMOVIM(2831) CHAMADA DE (b)VENDRAP(96) CHAMADA DE VENDRAP(140) CHAMADA DE (b)BUILDMENU(142) CHAMADA DE MAIN(104) na linha 2831 está assim: LogReg(nOper,cOper,"RECEBEU R$ "+ALLTRIM(TRANS(nTotParc-mTrc,"@E 999,999.99"))+" REF. VENDA "+ALLTRIM(STR(mCdVenda))+" ("+cTodos+")", nTotParc-mTrc, "VENDA", mCdVenda) Grato pela a ajuda. Cesar Clipper5.3, Blinker7.0, FWH25 para clipper
  9. Caros amigos O que pode causar esse erro? Como resolver? Aplicacao ========== Nome e Caminho: C:\LOCARODA\LOCADORA.EXE Tamanho: 1,951,360 bytes Maximo de arquivos abertos: ( SetHandleCount() ) 150 Ocorreu erro em: 09/01/2007, 10:29:22 Descricao: Erro BASE/1082 Argument error: - Args: [ 1] = U [ 2] = N 0 Chamadas ao Stack ================= CHAMADA DE FECHAMOVIM(2831) CHAMADA DE (b)VENDRAP(96) CHAMADA DE VENDRAP(140) CHAMADA DE (b)BUILDMENU(142) CHAMADA DE MAIN(104) na linha 2831 está assim: LogReg(nOper,cOper,"RECEBEU R$ "+ALLTRIM(TRANS(nTotParc-mTrc,"@E 999,999.99"))+" REF. VENDA "+ALLTRIM(STR(mCdVenda))+" ("+cTodos+")", nTotParc-mTrc, "VENDA", mCdVenda) Grato pela a ajuda. Cesar Clipper5.3, Blinker7.0, FWH25 para clipper
  10. Skineth

    Grato

    Caros Amigos do Forum Agradeço pela ajuda que cada um está me dando, desculpa pelas as minha dúvidas, ainda estou começando a dar os primeiros passos em Fivewin. Muito obrigado. Clipper5.3, Blinker7.0, FWH25 para clipper
  11. Skineth

    Grato

    Caros Amigos do Forum Agradeço pela ajuda que cada um está me dando, desculpa pelas as minha dúvidas, ainda estou começando a dar os primeiros passos em Fivewin. Muito obrigado. Clipper5.3, Blinker7.0, FWH25 para clipper
  12. Obrigado Amigo Alessandro Valeu Clipper5.3, Blinker7.0, FWH25 para clipper
  13. Amigo Alessandro O amigo poderia enviar para o meu e-mail, não tenho. Grato. Clipper5.3, Blinker7.0, FWH25 para clipper
  14. Caros amigos Quando abro a tela de Cadastro de Clientes, me da o seguinte erro: Cannot load FreeImage.DLL O que causa esse erro e como corrigir? Agradeço a atenção. Atenciosamente, Renato Clipper5.3, Blinker7.0, FWH25 para clipper
  15. Caros amigos Quando abro a tela de Cadastro de Clientes, me da o seguinte erro: Cannot load FreeImage.DLL O que causa esse erro e como corrigir? Agradeço a atenção. Atenciosamente, Renato Clipper5.3, Blinker7.0, FWH25 para clipper
  16. Amigo Renato 1º - Faço um Backup do seu projeto para não perder nada, caso de algum erro; 2º - Se o amigo estiver usando o FWH25, copia do FWH25\Source\image para dentro do seu projeto; 3º - Isso poderá resolver o seu problema. Um abraço. Cesar Clipper53, Blinker70, FW25 para clipper
  17. desculpa pelos os erros ortográficos Clipper53, Blinker70, FW25 para clipper
  18. Caros amigos Desculpa em me intrometer no assunto, mas tenho quaze o mesmo erro e constantemente me aparece erro de CPRINTER, dizendo que não existe a variável.
  19. Prezados Amigos Alguém tem alguma apostila de Fivewin, que auxilia programação em Fivewin tirando uma boa parte de dúvidas? Grato pela a atenção Atenciosamente, Renato
  20. Prezados Amigos Alguém tem alguma apostila de Fivewin, que auxilia programação em Fivewin tirando uma boa parte de dúvidas? Grato pela a atenção Atenciosamente, Renato
  21. Agradeço a todos os membros do Fórum por ter tirado algumas dúvidas e desde já desejo um Feliz Ano Novo. Cesar
  22. Agradeço a todos os membros do Fórum por ter tirado algumas dúvidas e desde já desejo um Feliz Ano Novo. Cesar
  23. Ficamos contentes em ajudar e sempre continua persistindo nunca parando. É desta forma que um programador se torna programador, um colaborando com o outro. Felicidades Cesar
  24. // TGraph test #Include "Fivewin.Ch" #define GRAPH_TYPE_BAR 1 #define GRAPH_TYPE_LINE 2 #define GRAPH_TYPE_POINT 3 #define GRAPH_TYPE_PIE 4 #define GRAPH_TYPE_ALL 5 #Define SERIE_VALUES 1 #Define PERIOD_VALUES 2 Static oGraph, oItem[10], aEntrad, aSaidas, aSaldos, aTitulo, aVals, aItem FUNCTION RELGRAPH(nData) LOCAL oGrfDl, oGraph, oFontT, oFontX, oFontY LOCAL cItem, oPie, oFont IF ! ChkMangr() ; RETURN NIL ; ENDIF aEntrad := {0,0,0,0,0,0,0,0,0,0,0,0} aSaidas := {0,0,0,0,0,0,0,0,0,0,0,0} aSaldos := {0,0,0,0,0,0,0,0,0,0,0,0} aTitulo := {"Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"} IF nData = 1 aVals := {aEntrad,aSaidas,aSaldos} nAno := YEAR(DATE()) IF MsgGet("Ano base","Ano base",@nAno) MsgMeter( { | oMeter, oText, oDlg, lEnd | ; GetCaixa( oMeter, oText, oDlg, @lEnd, @aEntrad, @aSaidas, @aSaldos, @aVals, nAno) },; "Obtendo valores. Aguarde...") ENDIF aItem:= { "Entradas", "Saidas","Saldos"} ELSE aVals := {aSaldos} nAno := YEAR(DATE()) IF MsgGet("Ano base","Ano base",@nAno) MsgMeter( { | oMeter, oText, oDlg, lEnd | ; GetLocac( oMeter, oText, oDlg, @lEnd, nData, @aSaldos, @aVals, nAno) },; "Obtendo valores. Aguarde...") ENDIF aItem:= {"Totais"} ENDIF cItem:=aItem[1] // Other fonts DEFINE FONT oFont NAME "MS Sans Serif" SIZE 0,-10 DEFINE FONT oFontT NAME "Times New Roman" SIZE 0,-18 BOLD ITALIC DEFINE FONT oFontX NAME "Times New Roman" SIZE 0,-10 DEFINE FONT oFontY NAME "Times New Roman" SIZE 0,-10 DEFINE DIALOG oGrfDl RESOURCE "Graph" TITLE OemToAnsi("Gr fico estat¡stico") FONT oFont REDEFINE FOLDER oFld ID 101 OF oGrfDl ; PROMPTS OemToAnsi("&Gr gico"), OemToAnsi("&Tabela") ; DIALOGS "GRAFDL1", "GRAFDL2" REDEFINE BTNBMP ID 101 OF oFld:aDialogs[1] RESOURCE "Printer" NOBORDER TOOLTIP "Imprimir" ; ACTION GetPrtCoors(oGraph) REDEFINE BTNBMP ID 102 OF oFld:aDialogs[1] RESOURCE "Bars" NOBORDER TOOLTIP "Barras" ; ACTION (oGraph:nType:=GRAPH_TYPE_BAR , oPie:Hide(), oGraph:Refresh()) REDEFINE BTNBMP ID 103 OF oFld:aDialogs[1] RESOURCE "Lines" NOBORDER TOOLTIP "Linhas" ; ACTION (oGraph:nType:=GRAPH_TYPE_LINE , oPie:Hide(), oGraph:Refresh()) REDEFINE BTNBMP ID 104 OF oFld:aDialogs[1] RESOURCE "Points" NOBORDER TOOLTIP "Pontos" ; ACTION (oGraph:nType:=GRAPH_TYPE_POINT, oPie:Hide(), oGraph:Refresh()) REDEFINE BTNBMP ID 105 OF oFld:aDialogs[1] RESOURCE "Pie" NOBORDER TOOLTIP "Torta" ; ACTION (oGraph:nType:=GRAPH_TYPE_PIE , oPie:Show(), oGraph:Refresh()) REDEFINE BTNBMP ID 106 OF oFld:aDialogs[1] RESOURCE "3D" NOBORDER TOOLTIP "3D" ; ACTION (oGraph:l3D :=!oGraph:l3D ,oGraph:Refresh()) REDEFINE BTNBMP ID 107 OF oFld:aDialogs[1] RESOURCE "xGrid" NOBORDER TOOLTIP "Linhas horizontais" ; ACTION (oGraph:lxGrid:=!oGraph:lxGrid ,oGraph:Refresh()) REDEFINE BTNBMP ID 108 OF oFld:aDialogs[1] RESOURCE "yGrid" NOBORDER TOOLTIP "Linhas verticais" ; ACTION (oGraph:lyGrid:=!oGraph:lyGrid ,oGraph:Refresh()) REDEFINE BTNBMP ID 109 OF oFld:aDialogs[1] RESOURCE "Fonts" NOBORDER TOOLTIP "Fontes" ; ACTION Show_Menu(oFld:aDialogs[1], 23,198,oGraph) REDEFINE BTNBMP ID 110 OF oFld:aDialogs[1] RESOURCE "Tools" NOBORDER TOOLTIP "Configurar" ; ACTION Chg_Options(oGraph,oPie,aItem,@cItem) REDEFINE COMBOBOX oPie VAR cItem ITEMS aItem ID 115 OF oFld:aDialogs[1] ; ON CHANGE (oGraph:nPieX:=Max(oPie:nAt,1),oGraph:Refresh()) // Graph start settings via Command (TGraph.Ch) oGraph := TGraph():ReDefine( 120, oFld:aDialogs[1] ) IF nData = 1 oGraph:AddSerie( aEntrad, "Entrada", RGB( 0,255,255)) oGraph:AddSerie( aSaidas, "Saida", RGB(255,102, 10)) oGraph:AddSerie( aSaldos, "Saldo", RGB( 0,200,100)) oGraph:cTitle := "Movimento do caixa" ELSEIF nData = 2 oGraph:AddSerie( aSaldos, "Totais", RGB(255,102, 10)) oGraph:cTitle := OemToAnsi("Loca‡Æo de filmes (di ria normal)") ELSEIF nData = 3 oGraph:AddSerie( aSaldos, "Totais", RGB(255,102, 10)) oGraph:cTitle := OemToAnsi("Filmes gr tis") ELSEIF nData = 4 oGraph:AddSerie( aSaldos, "Totais", RGB(255,102, 10)) oGraph:cTitle := "Descontos concedidos" ENDIF oGraph:SetYVals( aTitulo ) oGraph:l3D := .t. oGraph:nType := GRAPH_TYPE_BAR oGraph:aFont[1]:= oFontT oGraph:aFont[2]:= oFontX oGraph:aFont[3]:= oFontY oGraph:lcTitle := .F. oGraph:nClrT := RGB( 55, 55, 55) oGraph:nClrX := CLR_BLUE oGraph:nClrY := CLR_RED oGraph:cPicture:= "999,999.99" oGraph:lViewVal:= .f. oGraph:cBitmap:= ".\BITMAPS\GRAFICO.bmp" nRec := 1 REDEFINE LISTBOX oBrowse ; FIELDS aItem[nRec],; TRANS(aVals[nRec,01],"@E 999,999.99"),; TRANS(aVals[nRec,02],"@E 999,999.99"),; TRANS(aVals[nRec,03],"@E 999,999.99"),; TRANS(aVals[nRec,04],"@E 999,999.99"),; TRANS(aVals[nRec,05],"@E 999,999.99"),; TRANS(aVals[nRec,06],"@E 999,999.99"),; TRANS(aVals[nRec,07],"@E 999,999.99"),; TRANS(aVals[nRec,08],"@E 999,999.99"),; TRANS(aVals[nRec,09],"@E 999,999.99"),; TRANS(aVals[nRec,10],"@E 999,999.99"),; TRANS(aVals[nRec,11],"@E 999,999.99"),; TRANS(aVals[nRec,12],"@E 999,999.99") ; ID 103 OF oFld:aDialogs[2] ; ALIAS NIL ; COLORS CLR_BLACK, 14483196 oBrowse:aHeaders := {"Ref","Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"} oBrowse:aColSizes := {70,70,70,70,70,70,70,70,70,70,70,70,70} oBrowse:bLogicLen := {|| len(aVals)} oBrowse:bGoTop := {|| nRec := 1 } oBrowse:bGoBottom := {|| nRec := len(aVals) } oBrowse:bSkip := { | nWant, nDo | ; nDo := Min( Max( nWant, 1 - nRec ), ; Len( aVals ) - nRec ), ; nRec += nDo, nDo } REDEFINE BUTTON oBtn0 ID 102 OF oGrfDl ACTION oGrfDl:End() ACTIVATE DIALOG oGrfDl CENTERED ON INIT oPie:Hide() oFontT:End() oFontX:End() oFontY:End() oFont:End() RETURN (NIL) FUNCTION Chg_Options(oGraph,oPie,aItem,cItem) LOCAL lRefresh:=.F., oCbx, cType, nType, aType LOCAL oDlg, aOpt[13], nSeries:=1, cSerie, oCol LOCAL oPnt, cPoint, aPoint, oFont, nI aType :={"Barras","Linhas","Pontos","Torta","Mix"} aPoint:={"Ponto","Cruzado","Formato"} cPoint:=aPoint[oGraph] nType :=oGraph:nType cType :=aType[nType] aOpt[ 1] := oGraph:l3D aOpt[ 2] := oGraph:lTitle aOpt[ 3] := oGraph:lxVal aOpt[ 4] := oGraph:lyVal aOpt[ 5] := oGraph:lLegends aOpt[ 6] := oGraph:lxGrid aOpt[ 7] := oGraph:lyGrid aOpt[ 8] := oGraph:nXRanges aOpt[ 9] := oGraph:nBarD aOpt[10] := oGraph:nValues aOpt[11] := oGraph:cTitle +Space(30-Len(oGraph:cTitle )) aOpt[12] := Space(10-Len(oGraph:cPicture))+oGraph:cPicture aOpt[13] := oGraph:lViewVal DEFINE FONT oFont NAME "MS Sans Serif" SIZE 0,-10 DEFINE DIALOG oDlg RESOURCE "Settings" FONT oFont REDEFINE CHECKBOX aOpt[ 1] ID 101 OF oDlg REDEFINE CHECKBOX aOpt[ 2] ID 102 OF oDlg REDEFINE CHECKBOX aOpt[ 3] ID 103 OF oDlg REDEFINE CHECKBOX aOpt[ 4] ID 104 OF oDlg REDEFINE CHECKBOX aOpt[ 5] ID 105 OF oDlg REDEFINE CHECKBOX aOpt[ 6] ID 106 OF oDlg REDEFINE CHECKBOX aOpt[ 7] ID 107 OF oDlg REDEFINE GET aOpt[ 8] ID 108 OF oDlg PICTURE "99" REDEFINE GET aOpt[ 9] ID 109 OF oDlg PICTURE "99" REDEFINE COMBOBOX oCbx VAR cType ITEMS aType ID 110 OF oDlg REDEFINE COMBOBOX oCol VAR cSerie ITEMS aGetSeries( oGraph ) ; ID 111 OF oDlg ; ON CHANGE (SelColor(oCol,oGraph:aSeries),oGraph:Refresh(.T.)) REDEFINE COMBOBOX oPnt VAR cPoint ITEMS aPoint ID 112 OF oDlg ; ON CHANGE (oGraph:nPoint:=oPnt:nAt,oGraph:Refresh(.T.)) ; BITMAPS {"Point","Cross","Shape"} REDEFINE RADIO aOpt[10] ID 113,114 OF oDlg REDEFINE GET aOpt[11] ID 115 OF oDlg PICTURE "@X" REDEFINE GET aOpt[12] ID 116 OF oDlg PICTURE "@X" REDEFINE CHECKBOX aOpt[13] ID 117 OF oDlg REDEFINE BUTTON ID 120 OF oDlg ACTION (lRefresh:=.T., oDlg:End()) REDEFINE BUTTON ID 125 OF oDlg REDEFINE BUTTON ID 130 OF oDlg ACTION oDlg:End() CANCEL ACTIVATE DIALOG oDlg IF lRefresh oGraph:l3D :=aOpt[ 1] oGraph:lTitle :=aOpt[ 2] oGraph:lxVal :=aOpt[ 3] oGraph:lyVal :=aOpt[ 4] oGraph:lLegends:=aOpt[ 5] oGraph:lxGrid :=aOpt[ 6] oGraph:lyGrid :=aOpt[ 7] oGraph:nXRanges:=aOpt[ 8] oGraph:nBarD :=aOpt[ 9] oGraph:nValues :=aOpt[10] oGraph:cTitle :=Alltrim(aOpt[11]) oGraph:cPicture:=Alltrim(aOpt[12]) oGraph:nType :=oCbx:nAt oGraph:lViewVal:=aOpt[13] aItem:={} IF aOpt[10]=SERIE_VALUES FOR nI=1 TO Len(oGraph:aSeries) AAdd(aItem,oGraph:aSeries[nI][1]) NEXT nI ENDIF IF aOpt[10]=PERIOD_VALUES aItem:=AClone(oGraph:aYVals) ENDIF oPie:SetItems(aItem) oPie:Select(1) cItem:=aItem[1] IF oGraph:nType == GRAPH_TYPE_PIE oPie:Show() oPie:Refresh() ELSE oPie:Hide() ENDIF oGraph:Refresh() ENDIF oFont:End() RETURN (NIL) STAT FUNC Show_Menu(oDlg,nRow,nCol,oGraph) LOCAL oMenu, aFont, oFont, nOpt:=0 LOCAL nTClr :=oGraph:nClrT LOCAL nXClr :=oGraph:nClrX LOCAL nYClr :=oGraph:nClrY LOCAL nLClr :=oGraph:nClrL LOCAL nSClr :=oGraph:nClrST LOCAL nXTClr:=oGraph:nClrXT LOCAL nYTClr:=oGraph:nClrYT LOCAL nVClr :=oGraph:nClrV MENU oMenu POPUP MENUITEM "&Titulo " ACTION oGraph:aFont[1]:Choose(@nTClr ) MENUITEM "&Etiqueta X" ACTION oGraph:aFont[2]:Choose(@nXClr ) MENUITEM "&Etiqueta Y" ACTION oGraph:aFont[3]:Choose(@nYClr ) MENUITEM "&Legendas " ACTION oGraph:aFont[4]:Choose(@nLClr ) MENUITEM "&Subtitulo " ACTION oGraph:aFont[5]:Choose(@nSClr ) MENUITEM "&Titulo X " ACTION oGraph:aFont[6]:Choose(@nXTClr) MENUITEM "&Titulo Y " ACTION oGraph:aFont[7]:Choose(@nYTClr) MENUITEM "&Valores " ACTION oGraph:aFont[ 8 ]:Choose(@nVClr ) ENDMENU ACTIVATE POPUP oMenu OF oDlg AT nRow,nCol oGraph:nClrT :=nTClr oGraph:nClrX :=nXClr oGraph:nClrY :=nYClr oGraph:nClrL :=nLClr oGraph:nClrST:=nSClr oGraph:nClrXT:=nXTClr oGraph:nClrYT:=nYTClr oGraph:nClrV :=nVClr oGraph:Refresh() RETURN (NIL) STAT FUNC aGetSeries(oGraph) LOCAL nI, aRet :={} FOR nI:=1 TO Len(oGraph:aSeries) AAdd(aRet,oGraph:aSeries[nI][1]) NEXT nI RETURN (aRet) STAT FUNC SelColor(oCol,aColors) aColors[oCol][2]:=ChooseColor(aColors[oCol][2]) RETURN (.T.) // --- To printer ----------------------------------------------------------- FUNCTION GetPrtCoors(oGraph) LOCAL oDlg, oFont, ; nTop := 2.5,; nLeft := 2.5,; nHeight:= 8.0,; nWidth := 15.0 DEFINE FONT oFont NAME "MS Sans Serif" SIZE 0,-10 DEFINE DIALOG oDlg FROM 17, 20 TO 23.5,45.5 TITLE "Imprimir" FONT oFont @ 7, 5 SAY "Topo" SIZE 25,10 PIXEL @ 17, 5 SAY "Esquerda" SIZE 25,10 PIXEL @ 27, 5 SAY "Largura" SIZE 25,10 PIXEL @ 37, 5 SAY "Altura" SIZE 25,10 PIXEL @ 7,67 SAY "(cmtr)" SIZE 25,10 PIXEL @ 6,30 GET nTop PICTURE "99.99" SIZE 20,9 PIXEL @ 16,30 GET nLeft PICTURE "99.99" SIZE 20,9 PIXEL @ 26,30 GET nWidth PICTURE "99.99" SIZE 20,9 PIXEL @ 36,30 GET nHeight PICTURE "99.99" SIZE 20,9 PIXEL @ 20,55 BUTTON "&Aceitar" SIZE 40,10 PIXEL OF oDlg ACTION (Print(oGraph,nTop,nLeft,nWidth,nHeight),oDlg:End()) @ 35,55 BUTTON "&Cancelar" SIZE 40,10 PIXEL OF oDlg ACTION oDlg:End() ACTIVATE DIALOG oDlg oFont:End() RETURN (NIL) FUNCTION Print(oGraph, nTop, nLeft, nWidth, nHeight) LOCAL oPrn PRINT oPrn NAME "TGraph" PREVIEW oPrn:Cmtr2Pix(@nTop , @nLeft) // you can change to inchs oPrn:Cmtr2Pix(@nWidth, @nHeight) PAGE oGraph:Print( oPrn, nTop, nLeft, nWidth, nHeight ) ENDPAGE ENDPRINT RETURN Nil STATIC FUNCTION GetCaixa( oMeter, oText, oDlg, lEnd, aEntrad, aSaidas, aSaldos, aVals, nAno) LOCAL aTotal := {0,0,0,0,0,0,0,0,0,0,0,0},; aDespe := {0,0,0,0,0,0,0,0,0,0,0,0},; aLiqui := {0,0,0,0,0,0,0,0,0,0,0,0},; nRecNo := 1 PUBLIC dIni := CTOD("01/01/"+STRZERO(nAno,4)),; dFim := CTOD("31/12/"+STRZERO(nAno,4)) SELECT 5 CAIXA->(DBCLEARFIL(NIL)) CAIXA->(DBSETORDER(1)) SET FILTER TO CAIXA->DATA >= dIni .AND. CAIXA->DATA <= dFim oMeter:nTotal = CAIXA->(RecCount()) CAIXA->(DBGOTOP()) IF ! CAIXA->(EOF()) WHILE ! CAIXA->(EOF()) nMes := MONTH(CAIXA->DATA) IF CAIXA->TIPO = "C" IF nMes <> 0 aTotal[nMes] += CAIXA->ENTRADA aLiqui[nMes] += CAIXA->ENTRADA ENDIF ELSEIF CAIXA->TIPO = "D" IF nMes <> 0 aDespe[nMes] += CAIXA->SAIDA aLiqui[nMes] -= CAIXA->SAIDA ENDIF ENDIF oMeter:Set( nRecNo ) CAIXA->(DBSKIP(1)) nRecNo ++ SysRefresh() END ENDIF aEntrad := aTotal aSaidas := aDespe aSaldos := aLiqui aVals := {aEntrad,aSaidas,aSaldos} CAIXA->(DBCLEARFIL(NIL)) CAIXA->(DBGOTOP()) SysRefresh() SELECT 0 RETURN NIL STATIC FUNCTION GetLocac( oMeter, oText, oDlg, lEnd, nData, aSaldos, aVals, nAno) LOCAL aTotal := {0,0,0,0,0,0,0,0,0,0,0,0},; nRecNo := 1 PUBLIC dIni := CTOD("01/01/"+STRZERO(nAno,4)),; dFim := CTOD("31/12/"+STRZERO(nAno,4)) SELECT 7 LOCACAO->(DBCLEARFIL(NIL)) LOCACAO->(DBSETORDER(1)) SET FILTER TO LOCACAO->ITEM02 >= dIni .AND. LOCACAO->ITEM02 <= dFim oMeter:nTotal = LOCACAO->(RecCount()) LOCACAO->(DBGOTOP()) IF ! LOCACAO->(EOF()) WHILE ! LOCACAO->(EOF()) nMes := MONTH(LOCACAO->ITEM02) IF nData = 4 aTotal[nMes] += LOCACAO->ITEM20 ELSE FOR Y := 1 TO 30 IF !EMPTY( &("ITEM05_"+STRZERO(Y,2)) ) IF nData = 2 IF &("ITEM19_"+STRZERO(Y,2)) = .F. aTotal[nMes] ++ ENDIF ELSEIF nData = 3 IF &("ITEM19_"+STRZERO(Y,2)) = .T. aTotal[nMes] ++ ENDIF ENDIF ENDIF NEXT ENDIF LOCACAO->(DBSKIP(1)) END ENDIF aSaldos := aTotal aVals := {aSaldos} LOCACAO->(DBCLEARFIL(NIL)) LOCACAO->(DBGOTOP()) SysRefresh() SELECT 0 RETURN NIL
  25. Amigo Estou montando Relatório
×
×
  • Create New...