Jump to content
Fivewin Brasil

Theotokos

Membros
  • Posts

    1,796
  • Joined

  • Last visited

  • Days Won

    31

Everything posted by Theotokos

  1. citação:Olha en tinha um valid no ON INIT da dialog e consegui aqui no forum finaliza-lo assim oDlg:bValid:=NILid=red> ____________________________ Eder Xavier Msn:eder_xavier_2@hotmail.com C:\Xharbour Free\fivewin 8.05\workshop\VSX id=quote>id=quote>Valew, mas o valid é no Get e não deu Certo!!!!!!!!! Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  2. citação:"ESC" Veja se é isso q vc quer.. Luiz Arruda FWH24-WS-xHB 9950-xDev ico.corumba@gmail.com Oi Luiz!!! É isso sim. Qdo tecla ESC fecha, mas eu queria que tambem ao Clicar no Botao tivesse a mesma resposta.... Tem Jeito????????? id=quote>id=quote>Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  3. Boa Tarde! Desculpapor esta pergunta, mas sou leigo. Nas minhas dialog eu coloco um Botao "SAIR" só que quando usuário quer sair sem preencher nada ele não permite pois esta verificando as clausula do valid. COMO FAÇO? Utilizo "oDlg:end()" para fechar, tem alguma outra maneira? Obrigado!!!!!!!!!! Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio Editado por - Theotokos on 03/11/2008 16:36:31
  4. Boa Tarde! Desculpapor esta pergunta, mas sou leigo. Nas minhas dialog eu coloco um Botao "SAIR" só que quando usuário quer sair sem preencher nada ele não permite pois esta verificando as clausula do valid. COMO FAÇO? Utilizo "oDlg:end()" para fechar, tem alguma outra maneira? Obrigado!!!!!!!!!! Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio Editado por - Theotokos on 03/11/2008 16:36:31
  5. citação:eu faco assim e funciona , 80% *--------------------------------------------------------------------------- * campo origem destino Pasta atual [] function ContratoWord( aCampos , cArqContrato , wpasta , PATUAL , COLCHETE) local cModelo := cArqContrato+'.doc', cArqDoc local oWord, x cArqDoc := 'C:\TEMP\' + ALLTRIM(WPASTA) If (CurDir("C:\") # "TEMP") lMkDir("C:\TEMP") EndIf if file( cModelo ) __copyfile( cArqContrato+'.doc', cArqDoc, .t. ) // salva o original oWord := TWord():New() // inicia o objeto OLE Word if oWord:IsVisible() oWord:Hide() endif oWord:OpenDoc( cArqDoc ) // abre o documento modelo for x=1 to len( aCampos ) IF COLCHETE // vai substituir o que estiver entre [] oWord:Replace( '['+aCampos[x,1]+']' , aCampos[x,2] ) ELSE oWord:Replace( aCampos[x,1] , aCampos[x,2] ) ENDIF next * oWord:preview() // visualiza o documento * oWord:Visualizar() // visualiza o documento * oWord:PrintDoc(.t.) // imprime o documento oWord:end() IF COLCHETE pat:=StrTran(carqdoc,'C:\TEMP','') PAT:=ALLTRIM(PATUAL) + PAT ELSE PAT:=ALLTRIM(PATUAL) ENDIF __copyfile( cArqDoc , PAT , .t. ) // salva o original else MsgAlert( 'Arquivo [ '+cModelo+' ] não localizado.', 'Atenção' ) endif return nil id=quote>id=quote>É não sei o que acontece não, estou usando esta função que voce passou, gera o arquivo, mas não troca os campos,e tambem fica na mesma, não mostra na tela e nem imprime... Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  6. citação:Olá, bom dia !!! Funciona normalmente. Mostre como estás fazendo. Alessandroid=blue> FW20d+CL53b+Blk7+@Say+CDX "Nós nos transformamos naquilo que praticamos com freqüência. A perfeição, portanto, não é um ato isolado e sim um hábito". id=red>Editado por - aferra on 23/10/2008 08:14:39 id=quote>id=quote>Bom Dia!!!!!!!!!!!!! function ContratoWord( aCampos, cArq ) local x, oWord, cModelo:=curdrive()+':\prg\xotica\modelo.doc' //importante colocar a letra do drive senão dá erro oWord := TWord():New() // inicia o objeto OLE Word if oWord:IsVisible() oWord:Hide() endif oWord:OpenDoc( cModelo ) // abre o documento modelo for x=1 to len( aCampos ) oWord:Replace( '['+aCampos[x,1]+']' , aCampos[x,2] ) next oWord:preview() // visualiza o documento no preview do Word oWord:Visualizar() // visualiza o documento oWord:PrintDoc(.t.) // imprime o documento sem apresentar na tela oWord:end() return nil Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  7. Aos colegas PAZ E AMOR DE CRISTO!!!! Pessoal, esta classe tword funciona com o office 2007 (estou utilizado o word 2007, mas gero o arquivo doc(97/2000)). A rotina de teste da classe funciona, ou seja, quando executo não dá erro, mas não mostra na tela e nem imprime... Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  8. Aos colegas PAZ E AMOR DE CRISTO!!!! Pessoal, esta classe tword funciona com o office 2007 (estou utilizado o word 2007, mas gero o arquivo doc(97/2000)). A rotina de teste da classe funciona, ou seja, quando executo não dá erro, mas não mostra na tela e nem imprime... Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  9. citação:Olá, Retire os DbCloseAll(), que provavelmente irá parar o problema Vagner Wirts VI Encontro está chegando , não perca id=quote>id=quote>Valew Vagenr!!!!!!!!!!!!!! Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  10. citação:Olá, Está me parecendo que o problema está em GravaEntrada, geralmente isso ocorre, qndo vc manda gravar em um arquivo q está exclusivo em outra estação, veja se não é esse o problema, veja se vc não travou o arquivo ao invés de travar o registro para gravação, ou se for um arquivo temporário, veja se ele ainda está lá Vagner Wirts VI Encontro está chegando , não perca id=quote>id=quote>No gravaentrada eu utilizo varios arquivos e todos eles utilizo RecLock(), ALIAS nao trava já de emediato, só depois de algum lançamento... Function GravaEntrada() /* GRAVA NO ARQUIVO DE PEDIDOS AS INFORMAÇÕES LANÇADAS */ Sel("BanEntra",1) DbGoBottom() nNumero := P_NUMPEDID + 1 DbGoTop() * For n1 := 1 To Len(aDados) AppendRec() Replace P_NUMPEDID With nNumero Replace P_CODIGO With aDados[n1,1] Replace P_DESCRICA With aDados[n1,2] Replace P_VRPRECO With aDados[n1,6] Replace P_VRCUSTO With aDados[n1,7] Replace P_QUANTIDA With aDados[n1,8] Replace P_DATAMOV With Date() Replace P_ESFERICO With nEsferico Replace P_CILINDRI With nCilindrico UnLockRecord() Next n1 DbCloseAll() * /* EFETUA A BAIXA NO ESTOQUE */ Sel("BanMerca",1) DbGoTop() For n3 := 1 To Len(aDados) If DbSeek( aDados[ n3, 9] ) RecLock() Replace M_QUANTIDA With Iif(nTpEntrada=1,M_QUANTIDA,0) + aDados[n3,8] Replace M_VENDA With aDados[n3,6] Replace M_CUSTO With aDados[n3,7] Replace M_SALDO With aDados[n3,11] Replace M_EMINIMO With aDados[n3,12] Replace M_EMAXIMO With aDados[n3,13] UnLockRecord() End Next n3 DbCloseAll() * For n3 := 1 To Len(aDados) Do Case Case Upper(AllTrim(aDados[n3, 10])) = "LENTE" Sel("BanLente",1) DbGoTop() Case Upper(AllTrim(aDados[n3, 10])) = "BIFOCAL" Sel("Bifocal",1) DbGoTop() Case Upper(AllTrim(aDados[n3, 10])) = "MULTIFOCAL" Sel("Multifo",1) DbGoTop() OTHERWISE Loop End If DbSeek( aDados[ n3, 1] ) While !EOF() .And. CODIGO = aDados[n3, 1] If Upper(AllTrim(DESCRICAO )) == Upper(AllTrim(aDados[n3,2])) RecLock() Replace QUANTIDADE With Iif(nTpEntrada=1,QUANTIDADE,0) + aDados[n3,8] Replace PRVENDA With aDados[n3,6] Replace PRCUSTO With aDados[n3,7] Replace SALDO With aDados[n3,11] Replace ESTMINIMO With aDados[n3,12] Replace ESTMAXIMO With aDados[n3,13] UnLockRecord() End DbSkip(1) End End Next n3 DbCloseAll() * Return(.t.) Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio Editado por - Theotokos on 22/10/2008 15:13:35
  11. citação: citação:verifique *--------------------------------- Function gerfip(wvereador,wdireto) Local aCampos := {} sele fip wlinha1 = alltrim(fip->linha1) wlinha2 = alltrim(fip->linha2) wlinha3 = alltrim(fip->linha3) wlinha4 = alltrim(fip->linha4) wlinha5 = alltrim(fip->linha5) wlinha6 = alltrim(fip->linha6) wlinha7 = alltrim(fip->linha7) wdata = fip->data wdsta := left(dtoc(FIP->data),2)+; ' de '+descmes(FIP->data)+' de '+str(year(FIP->data),4) aadd( aCampos, { '[DATA]' , wdsta } ) aadd( aCampos, { '[1]' , if(empty(wlinha1), " " , alltrim(wlinha1) ) } ) aadd( aCampos, { '[2]' , if(empty(wlinha2), " " , alltrim(wlinha2) ) } ) aadd( aCampos, { '[3]' , if(empty(wlinha3), " " , alltrim(wlinha3) ) } ) aadd( aCampos, { '[4]' , if(empty(wlinha4), " " , alltrim(wlinha4) ) } ) aadd( aCampos, { '[5]' , if(empty(wlinha5), " " , alltrim(wlinha5) ) } ) aadd( aCampos, { '[6]' , if(empty(wlinha6), " " , alltrim(wlinha6) ) } ) aadd( aCampos, { '[7]' , if(empty(wlinha7), " " , alltrim(wlinha7) ) } ) aadd( aCampos, { '[VEREADOR]' , 'VER.'+WVEREADOR } ) porigem := CDIR + '\dot\cabefip' pdestino := CRIARFIP('fip.doc') warqt := CDIR + '\' + pdestino Contratoword( aCampos , porigem , pdestino , WARQT , .F. ) if wdireto printexec(warqt) else EXECPROG(warqt) endif return (warqt) *--------------------- function criarFIP(warq) local xixi,wagera xixi = 1 wagera:= ALLTRIM(strtran(upper(warq),'.DOC','')) WHILE .t. * ERASE &warq IF !File(warq) WARQ := WARQ EXIT ELSE warq := WAGERA + strzero(xixi,2) + '.DOC' ENDIF xixi++ ENDDO RETURN(WARQ) id=quote>id=quote>Leandro a grana ta curta só ta dando pra pagar as pensões alimenticias(5).kkkkk Luis é o seguinte,,, eu preciso que a impressora imprima os formulários no modo econômico,como fazer isso ?? a tword ta funcionado 100% aqui FWH 8.08/XHB1.1/Pelles/Mysql/fastreport laurentinocarlos@gmail.com Montes Claros MG id=quote>id=quote>Como é esta outra função ContratoWord(...) ********************************************************** A que eu tenho não tem este paramentros.... Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio Editado por - Theotokos on 23/10/2008 08:00:01
  12. citação:Mostre a area do programa onde ele aborta e mostra a mensagem. João Santos - São Paulo. kmt_karinha@pop.com.br kapiaba@brfree.com.br Fone: (11) 3106-2832 FWH 2.7 - xHARBOUR 0.99.61 - WorkShop.Exe id=quote>id=quote>Na verdade não consegui fazer dar o erro, o cliente que me reclamou e falou que aparece esta mensagem, fazendo que trave o programa.... Mas a rotina é essa : Procedure Lan_Entrada() PRIVATE oDlg, oSay, oFont, oGet, oCmb, oLbx dData := Date() cNCliente := Space(05) cCliente := Space(50) cEndereco := Space(50) cBairro := Space(40) cCidade := Space(40) cEstado := Space(15) cTelefone := Space(13) cReferencia := Space(20) cCodigo := Space(15) cDescricao := Space(50) nEsferico := 0.00 nCilindrico := 0.00 nQuantidade := 0.00 nPrVenda := 0.00 nVrTotal := 0.00 nTotal := 0.00 nTotalGeral := 0.00 nEstAtual := 0.00 cFormaPg := "Quinzenal" nNumero := 0 nDesconto := 0.00 nPrCusto := 0.00 cTipo := "Lente" cSaldo := "SIM" nTpEntrada := 2 nEstMinimo := 0 nEstMaximo := 0 * aDados := {{"", "", "", "", "", 0.00, 0.00, 0.00, "", "", "",0,0}} * DEFINE FONT oFont NAME "Times News Roma" SIZE 25, 25 BOLD DEFINE DIALOG oDlg RESOURCE "DLG_ENTRADA" BRUSH oBrush * oDlg:lTransparent := .T. * oDlg:lHelpIcon := .F. REDEFINE SAY oSay PROMPT "Lançamento da Entrada" ID 300 ; OF oDlg FONT oFont * REDEFINE GET oGetCod VAR cCodigo UPDATE PICTURE "@!X" ID 105 Of oDlg Valid (BcMercadoria(oGetCod)) REDEFINE COMBOBOX oCmb VAR cTipo PROMPTS {"Lente","Bifocal","Multifocal"} UPDATE ID 121 OF oDlg WHEN (Empty(cCodigo)) REDEFINE GET oGet VAR nEsferico UPDATE PICTURE "@E 9,999.99" ID 102 Of oDlg When (Empty(cCodigo)) REDEFINE GET oGet VAR nCilindrico UPDATE PICTURE "@E 9,999.99" ID 103 Of oDlg When (Empty(cCodigo)) Valid (BcLenteE(oGet)) REDEFINE GET oGet VAR nQuantidade UPDATE PICTURE "@E 999.99" ID 106 Of oDlg REDEFINE GET oGet VAR nPrVenda UPDATE PICTURE "@E 9,999.99" ID 107 Of oDlg REDEFINE GET oGet VAR nPrCusto UPDATE PICTURE "@E 9,999.99" ID 108 Of oDlg Valid (AdVtEntrada(oGet)) REDEFINE GET oGet VAR cDescricao UPDATE PICTURE "@!X" ID 111 Of oDlg WHEN .F. REDEFINE GET oGet VAR nEstAtual UPDATE PICTURE "@E 9,999.99" ID 112 Of oDlg WHEN .F. REDEFINE GET oGet VAR nEstMinimo UPDATE PICTURE "@E 9,999.99" ID 4011 Of oDlg REDEFINE GET oGet VAR nEstMaximo UPDATE PICTURE "@E 9,999.99" ID 4009 Of oDlg * REDEFINE RADIO oRadio VAR nTpEntrada UPDATE ID 4007, 4008 OF oDlg * oDlg:aControls[11]:cTooltip := "Somará a Qtde ao Estoque." oDlg:aControls[12]:cTooltip := "Coloca a Qtde no Estoque." * REDEFINE COMBOBOX oCmb VAR cSaldo PROMPTS {"SIM","NÃO"} UPDATE ID 4005 OF oDlg * REDEFINE BUTTON ID 114 OF oDlg ACTION ( GravaEntrada(),oDlg:End() ) PROMPT "GRAVAR" REDEFINE BUTTON ID 115 OF oDlg ACTION ( oDlg:End()) PROMPT "Fechar" * REDEFINE LISTBOX oLbx ; Fields aDados[oLbx] ,; aDados[oLbx] ,; aDados[oLbx] ,; aDados[oLbx] ,; aDados[oLbx] ; ON DBLCLICK ( ExcluirItem(oLbx) ) UPDATE ; Headers "Cód./Ref.","Descrição","Pr.Venda","Pr.Custo","Quant." ; ID 116 OF oDlg oLbx:acolsizes := {150,400,100,100,100, 100} oLbx:SetArray(aDados) oLbx:aJustify := {.f.,.f.,.f.,.f.,.f., .f. } oLbx:refresh() oLbx:bKeyDown:={|nKey| IIF(nKey=VK_RETURN,(lSai:=.t.,oDlg:End()), ) } ACTIVATE DIALOG oDlg CENTERED RETURN nil Function BcMercadoria(oG) Local cProcura If Empty(cCodigo) Return(.T.) End cRef := Pad(SubStr(cCodigo,1,AT("-",cCodigo)-1),10) cCor := Pad(SubStr(cCodigo,AT("-",cCodigo)+1),15) cProcura := cRef + cCor Sel("BanMerca",5) DbGoTop() If DbSeek( cProcura ) // Procura pela Referencia e Cor cCodigo := Pad(M_CODIGO,15) cDescricao := M_DESCRICA nPrVenda := M_VENDA nEstAtual := M_QUANTIDA nPrCusto := M_CUSTO cReferencia:= AllTrim(M_REFERENC)+"-"+AllTrim(M_COR) cSaldo := M_SALDO nEstMinimo := M_EMINIMO nEstMaximo := M_EMAXIMO Else Sel("BanMerca",1) DbGoTop() If DbSeek( cCodigo ) // Procura pelo Código cCodigo := Pad(M_CODIGO,15) cDescricao := M_DESCRICA nPrVenda := M_VENDA nEstAtual := M_QUANTIDA nPrCusto := M_CUSTO cReferencia:= AllTrim(M_REFERENC)+"-"+AllTrim(M_COR) cSaldo := M_SALDO nEstMinimo := M_EMINIMO nEstMaximo := M_EMAXIMO Else MsgInfo("Mercadoria Não Encontrada","Pesquisa") Return(.F.) End End If cSaldo = "SIM" If nEstAtual <= 0 MsgAlert("Produto sem Estoque","..: Erro :..") Return(.f.) End End oG:Refresh() oG:Display() oDlg:Update() oDlg:Refresh() Return(.T.) Function BcLenteE(oG) LOCAL cItem, cArquivo cItem := ".E"+StrTran(StrZero(nEsferico,6,2), ".", "")+; ".C"+StrTran(StrZero(nCilindrico,6,2), ".", "") Do Case Case cTipo = "Lente" Sel("BanLente",1) cArquivo := "BanLente" Case cTipo = "Bifocal" Sel("Bifocal",1) cArquivo := "Bifocal" Case cTipo = "Multifocal" Sel("Multifo",1) cArquivo := "Multifo" EndCase DbGoTop() Set Filter To (Upper(AllTRim(cItem))) $ Upper(AllTrim(CODIGO)) DbGoTop() DEFINE DIALOG oDlgLente TITLE "Pesquisa Lentes" ; FROM 07,03 To 22,127 BRUSH oBrush * oDlgLente:lHelpIcon := .F. * @ 2, 10 SAY "Disponível" COLORS CLR_BLACK,CLR_YELLOW PIXELS SIZE 50, 8 CENTERED BORDER @ 2, 90 SAY "Não Disponível" COLORS CLR_BLACK,CLR_HGRAY PIXELS SIZE 50, 8 CENTERED BORDER * @ 01,01 BROWSE oBrw SIZE 480,95; ALIAS (cArquivo) DIALOG oDlgLente ; ON DBLCLICK (PegaLente(),oDlg:Update(), oDlg:Refresh(), oDlgLente:End()) * ADD COLUMN TO BROWSE oBrw DATA LINHA TITLE "Linha do Produto" SIZE 200 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA CODIGO TITLE "Código" SIZE 130 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA DESCRICAO TITLE "Descrição" SIZE 350 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA QUANTIDADE TITLE "Quant." SIZE 070 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA PRVENDA TITLE "Pr.Venda " SIZE 080 COLORS CorLinha(1), CorLinha(2) PICTURE "@E 9999.99" RIGHT ADD COLUMN TO BROWSE oBrw DATA SALDO TITLE "Saldo" SIZE 040 COLORS CorLinha(1), CorLinha(2) CENTER ADD COLUMN TO BROWSE oBrw DATA LOTE TITLE "Lote" SIZE 010 COLORS CorLinha(1), CorLinha(2) RIGHT oBrw:bKeyDown := {|nKey| IIF(nKey=13,(PegaLente(),oDlg:Update(), oDlg:Refresh(), oDlgLente:End()), ) } ACTIVATE DIALOG oDlgLente * oDlg:Update() oDlg:Refresh() * Set Filter To DbCloseArea() Return(.T.) Function BcLenteE(oG) LOCAL cItem, cArquivo cItem := ".E"+StrTran(StrZero(nEsferico,6,2), ".", "")+; ".C"+StrTran(StrZero(nCilindrico,6,2), ".", "") Do Case Case cTipo = "Lente" Sel("BanLente",1) cArquivo := "BanLente" Case cTipo = "Bifocal" Sel("Bifocal",1) cArquivo := "Bifocal" Case cTipo = "Multifocal" Sel("Multifo",1) cArquivo := "Multifo" EndCase DbGoTop() Set Filter To (Upper(AllTRim(cItem))) $ Upper(AllTrim(CODIGO)) DbGoTop() DEFINE DIALOG oDlgLente TITLE "Pesquisa Lentes" ; FROM 07,03 To 22,127 BRUSH oBrush * oDlgLente:lHelpIcon := .F. * @ 2, 10 SAY "Disponível" COLORS CLR_BLACK,CLR_YELLOW PIXELS SIZE 50, 8 CENTERED BORDER @ 2, 90 SAY "Não Disponível" COLORS CLR_BLACK,CLR_HGRAY PIXELS SIZE 50, 8 CENTERED BORDER * @ 01,01 BROWSE oBrw SIZE 480,95; ALIAS (cArquivo) DIALOG oDlgLente ; ON DBLCLICK (PegaLente(),oDlg:Update(), oDlg:Refresh(), oDlgLente:End()) * ADD COLUMN TO BROWSE oBrw DATA LINHA TITLE "Linha do Produto" SIZE 200 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA CODIGO TITLE "Código" SIZE 130 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA DESCRICAO TITLE "Descrição" SIZE 350 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA QUANTIDADE TITLE "Quant." SIZE 070 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA PRVENDA TITLE "Pr.Venda " SIZE 080 COLORS CorLinha(1), CorLinha(2) PICTURE "@E 9999.99" RIGHT ADD COLUMN TO BROWSE oBrw DATA SALDO TITLE "Saldo" SIZE 040 COLORS CorLinha(1), CorLinha(2) CENTER ADD COLUMN TO BROWSE oBrw DATA LOTE TITLE "Lote" SIZE 010 COLORS CorLinha(1), CorLinha(2) RIGHT oBrw:bKeyDown := {|nKey| IIF(nKey=13,(PegaLente(),oDlg:Update(), oDlg:Refresh(), oDlgLente:End()), ) } ACTIVATE DIALOG oDlgLente * oDlg:Update() oDlg:Refresh() * Set Filter To DbCloseArea() Return(.T.) Function BcLenteE(oG) LOCAL cItem, cArquivo cItem := ".E"+StrTran(StrZero(nEsferico,6,2), ".", "")+; ".C"+StrTran(StrZero(nCilindrico,6,2), ".", "") Do Case Case cTipo = "Lente" Sel("BanLente",1) cArquivo := "BanLente" Case cTipo = "Bifocal" Sel("Bifocal",1) cArquivo := "Bifocal" Case cTipo = "Multifocal" Sel("Multifo",1) cArquivo := "Multifo" EndCase DbGoTop() Set Filter To (Upper(AllTRim(cItem))) $ Upper(AllTrim(CODIGO)) DbGoTop() DEFINE DIALOG oDlgLente TITLE "Pesquisa Lentes" ; FROM 07,03 To 22,127 BRUSH oBrush * oDlgLente:lHelpIcon := .F. * @ 2, 10 SAY "Disponível" COLORS CLR_BLACK,CLR_YELLOW PIXELS SIZE 50, 8 CENTERED BORDER @ 2, 90 SAY "Não Disponível" COLORS CLR_BLACK,CLR_HGRAY PIXELS SIZE 50, 8 CENTERED BORDER * @ 01,01 BROWSE oBrw SIZE 480,95; ALIAS (cArquivo) DIALOG oDlgLente ; ON DBLCLICK (PegaLente(),oDlg:Update(), oDlg:Refresh(), oDlgLente:End()) * ADD COLUMN TO BROWSE oBrw DATA LINHA TITLE "Linha do Produto" SIZE 200 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA CODIGO TITLE "Código" SIZE 130 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA DESCRICAO TITLE "Descrição" SIZE 350 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA QUANTIDADE TITLE "Quant." SIZE 070 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA PRVENDA TITLE "Pr.Venda " SIZE 080 COLORS CorLinha(1), CorLinha(2) PICTURE "@E 9999.99" RIGHT ADD COLUMN TO BROWSE oBrw DATA SALDO TITLE "Saldo" SIZE 040 COLORS CorLinha(1), CorLinha(2) CENTER ADD COLUMN TO BROWSE oBrw DATA LOTE TITLE "Lote" SIZE 010 COLORS CorLinha(1), CorLinha(2) RIGHT oBrw:bKeyDown := {|nKey| IIF(nKey=13,(PegaLente(),oDlg:Update(), oDlg:Refresh(), oDlgLente:End()), ) } ACTIVATE DIALOG oDlgLente * oDlg:Update() oDlg:Refresh() * Set Filter To DbCloseArea() Return(.T.) Function BcLenteE(oG) LOCAL cItem, cArquivo cItem := ".E"+StrTran(StrZero(nEsferico,6,2), ".", "")+; ".C"+StrTran(StrZero(nCilindrico,6,2), ".", "") Do Case Case cTipo = "Lente" Sel("BanLente",1) cArquivo := "BanLente" Case cTipo = "Bifocal" Sel("Bifocal",1) cArquivo := "Bifocal" Case cTipo = "Multifocal" Sel("Multifo",1) cArquivo := "Multifo" EndCase DbGoTop() Set Filter To (Upper(AllTRim(cItem))) $ Upper(AllTrim(CODIGO)) DbGoTop() DEFINE DIALOG oDlgLente TITLE "Pesquisa Lentes" ; FROM 07,03 To 22,127 BRUSH oBrush * oDlgLente:lHelpIcon := .F. * @ 2, 10 SAY "Disponível" COLORS CLR_BLACK,CLR_YELLOW PIXELS SIZE 50, 8 CENTERED BORDER @ 2, 90 SAY "Não Disponível" COLORS CLR_BLACK,CLR_HGRAY PIXELS SIZE 50, 8 CENTERED BORDER * @ 01,01 BROWSE oBrw SIZE 480,95; ALIAS (cArquivo) DIALOG oDlgLente ; ON DBLCLICK (PegaLente(),oDlg:Update(), oDlg:Refresh(), oDlgLente:End()) * ADD COLUMN TO BROWSE oBrw DATA LINHA TITLE "Linha do Produto" SIZE 200 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA CODIGO TITLE "Código" SIZE 130 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA DESCRICAO TITLE "Descrição" SIZE 350 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA QUANTIDADE TITLE "Quant." SIZE 070 COLORS CorLinha(1), CorLinha(2) ADD COLUMN TO BROWSE oBrw DATA PRVENDA TITLE "Pr.Venda " SIZE 080 COLORS CorLinha(1), CorLinha(2) PICTURE "@E 9999.99" RIGHT ADD COLUMN TO BROWSE oBrw DATA SALDO TITLE "Saldo" SIZE 040 COLORS CorLinha(1), CorLinha(2) CENTER ADD COLUMN TO BROWSE oBrw DATA LOTE TITLE "Lote" SIZE 010 COLORS CorLinha(1), CorLinha(2) RIGHT oBrw:bKeyDown := {|nKey| IIF(nKey=13,(PegaLente(),oDlg:Update(), oDlg:Refresh(), oDlgLente:End()), ) } ACTIVATE DIALOG oDlgLente * oDlg:Update() oDlg:Refresh() * Set Filter To DbCloseArea() Return(.T.) Function AdVtEntrada(oGet) If Len(aDados) = 1 .And. Empty(aDados[1,1] ) aDados[1,1] := cReferencia aDados[1,2] := cDescricao aDados[1,3] := Transform(nPrVenda,"@E 99,999.99") aDados[1,4] := Transform(nPrCusto,"@E 99,999.99") aDados[1,5] := Transform(nQuantidade,"@E 99,999.99") aDados[1,6] := nPrVenda aDados[1,7] := nPrCusto aDados[1,8] := nQuantidade aDados[1,9] := cCodigo aDados[1,10]:= cTipo aDados[1,11]:= cSaldo aDados[1,12]:= nEstMinimo aDados[1,13]:= nEstMaximo Else AADD(aDados, { cReferencia, cDescricao, Transform(nPrVenda,"@E 99,999.99"), ; Transform(nPrCusto,"@E 99,999.99"), ; Transform(nQuantidade,"@E 99,999.99"), nPrVenda, nPrCusto, nQuantidade, ; cCodigo, cTipo, cSaldo, nEstMinimo, nEstMaximo }) End cReferencia := Space(20) cCodigo := Space(15) cDescricao := Space(50) nEsferico := 0.00 nCilindrico := 0.00 nQuantidade := 0.00 nPrVenda := 0.00 nPrCusto := 0.00 nVrTotal := 0.00 nEstAtual := 0.00 oCmb:Refresh() oSay:Refresh() oLbx:Refresh() oLbx:GoBottom() xSetFocus(ogetCod) xSetFocus(oget) Return .t. Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  13. citação:Mostre como voce faz a abertura dos bancos de dados. Ou em qual rotina isto ocorre?? Releia a rotina, o que ela faz exatamente. Gera um ERROR.LOG?? Estais Usando Windows XP home, como temas STANDARD?? Verifique. João Santos - São Paulo. kmt_karinha@pop.com.br kapiaba@brfree.com.br Fone: (11) 3106-2832 FWH 2.7 - xHARBOUR 0.99.61 - WorkShop.Exe Editado por - kapiaba on 21/10/2008 13:03:02 id=quote>id=quote>Nao grava arquivo log, apareca aquela mensagem tipica do windows "Este programa executou uma operacao ilegal" a rotina de abertura de arquivo é essa Procedure OpenDbf(FileName) * Local Tela * DbUseArea(.T.,"DBFCDX",FileName,,.T.) && Abre em Modo Compartilhado * If NetErr() Do While NetErr() InKey(0.01) DbUseArea(.T.,"DBFCDX",FileName,,.T.) && Abre em Modo Compartilhado End End Return Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  14. Olá Pessoal,A paz de Cristo É o seguinte, o sistem esta instalado em 3 maquinas, sendo 1 servidor, e os 2 maquinas tem a unidade mapeada (Z:) onde chamo o programa, o problema é: quando duas ou as tres maquinas utilizam o mesmo modulo (Ex.: Lanç.Entrada) aparece esta mensagem e trava o computador O que pode ser isso e como resolver? Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  15. Olá Pessoal,A paz de Cristo É o seguinte, o sistem esta instalado em 3 maquinas, sendo 1 servidor, e os 2 maquinas tem a unidade mapeada (Z:) onde chamo o programa, o problema é: quando duas ou as tres maquinas utilizam o mesmo modulo (Ex.: Lanç.Entrada) aparece esta mensagem e trava o computador O que pode ser isso e como resolver? Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  16. Mais uma duvida Como faço a partir de um função (qdo usario clicar em um botão tipo excluir) para mudar a cor desta linha em que foi clicado. É o seguinte: tenho um browse com Array, e quero que qdo o usuário selecione uma linha e clique em excluir, esta linha seja apenas colocado em cor diferente, como gray de fundo e branco na letra, indicando que esta excluido esta linha.... Obgado!!!!!!!!!!!! Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  17. Mais uma duvida Como faço a partir de um função (qdo usario clicar em um botão tipo excluir) para mudar a cor desta linha em que foi clicado. É o seguinte: tenho um browse com Array, e quero que qdo o usuário selecione uma linha e clique em excluir, esta linha seja apenas colocado em cor diferente, como gray de fundo e branco na letra, indicando que esta excluido esta linha.... Obgado!!!!!!!!!!!! Em Cristo!!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio
  18. Bom Dia! A PAZ E O AMOR DE CRISTO!!!! Alguem sabe como usar este Programa e integra-lo ao sistema? Será que pode me enviar algum exemplo ? Obgdo!!! Fiquem com DEUS!!!! Em Cristo!!! Rone O. Coura xHarbour + BCC55 + FiveWin + xDevStudio - Tentando Aprender com os Irmãos
  19. Bom Dia! A PAZ E O AMOR DE CRISTO!!!! Alguem sabe como usar este Programa e integra-lo ao sistema? Será que pode me enviar algum exemplo ? Obgdo!!! Fiquem com DEUS!!!! Em Cristo!!! Rone O. Coura xHarbour + BCC55 + FiveWin + xDevStudio - Tentando Aprender com os Irmãos
  20. citação:Pessoal Para quem estiver interessado, depois de muito quebrar a cabeça, consegui executar o Report Manager ( http://reportman.sourceforge.net/ ) de dentro do fivewin. Aqui está o caminho das pedras. Static function Ini_Report Local Reportx := createobject("ReportMan.ReportManX") Reportx:Preview = .T. Reportx:ShowProgress = .F. Reportx:ShowPrintDialog = .F. Reportx:Filename = "C:\temp\relatorio.rep" Reportx:SetParamValue("Selecao","Código 1") Reportx:SetParamValue("Selecao2","Código Dois") // Reportx:SaveToPdf("Execute.pdf",.T.) // para gerar direto para o pdf Reportx:Execute() // para jogar em preview Return nil Bom, para quem não conhece, o Report Manager é free, em portugues e gera ou não um preview. O Relatório é desenhado e salvo em um arquivo .REP No preview voce pode exportar para pdf, excel, html, bitmap, txt e metafile. Opção para envio de email abrindo o cliente de email padrão já anexando o relatório como PDF. Acessa MySql(esse não consegui fazer funcionar, não tentei por ODBC), Firebird, DBF e várias outras bases de dados. Estou usando o DBF através do Microsoft DAO/Obdc. Com a classe TDsn, caso a ODBC não exista, crio ela automáticamente. Não vejo problema no DBF como ODBC, pois todo windows tem esse drive. Ainda quero fazer vários testes para ver se posso adotar o report, mas para quem desejar testar e trocarmos idéias, tai a dica. id=quote>id=quote>Amigo!! Gostei dessa é mto bom, mas sou meio burro mesmo, nao consegui abaixar o arquivo, vc poderia me ajudar? Obgdo Rone ronerli@uol.com.br xHarbour + BCC55 + FiveWin + xDevStudio - Tentando Aprender com os Irmãos
  21. citação:Olá pessoal, usei esta classe e está quase ok. O único problema é que após receber a primeira ligação não recebe mais, tendo que sair o sistema do bina e entrar de novo. Alguém sabe o que pode ser feito? O pior é que no sistema atual lá funciona sem problemas. Estou precisando resolver com urgência!! oSocket := TSocket():New(2020) oSocket:Connect("192.168.111.222")) oSocket:bRead := { | oSocket | Domicilio("", oSocket:GetData() ) } Grato. Rondinelli - Itaocara-RJ Clipper 5.3b, Fivewin 2.6, Blinker 7, WorkShop id=quote>id=quote>Amigo!! Gostaria de colocar esta rotina em meus programas (Bina) mas não sei nada de como funciona, será que vc pode me enviar algo de como começar de como funciona (Bina por IP).... DESDE JA MTO OBGDO Enviar p/ ronerli@uol.com.br Rone xHarbour + BCC55 + FiveWin + xDevStudio - Tentando Aprender com os Irmãos
  22. citação:Olá Rone, a mensagem que deve estar apresentando para vc deve ser a "Abrir arquivo - Aviso de segurança", se for faça da seguinte forma: Você deve iniciar o "Editor de objeto de diretiva de grupo". Clique em Iniciar > Executar, Digite gpedit.msc e clique OK Agora vá para: Configurações do Usuario > Modelos Administrativos > Componentes do Windows > Gerenciador de Anexos > Lista de inclusão de tipos de arquivo de baixo risco > Ativado. Informe o nome do arquivo ou extensão, exemplo "sistmea.exe" ou ".exe." ( sem as aspas ) Pronto isso server para qualquer programa. Alessandroid=blue> FW20d+CL53b+Blk7+@Say+CDX "Nós nos transformamos naquilo que praticamos com freqüência. A perfeição, portanto, não é um ato isolado e sim um hábito". id=red> id=quote>id=quote>Valew! Resolveu sim!!!! DEUS LHE ABENÇOE xHarbour + BCC55 + FiveWin + xDevStudio - Tentando Aprender com os Irmãos
  23. citação:Rone, Poderia dar mais detalhes? Tipo: vc está abrindo o Word com o arquivo gerado? Se sim, tentaste imprimir pelo Word mesmo? Podes mostrar como estás fazendo? Abraço, Kleyber Derick xHarbour 1.1.0 + FWH 8.02 (BMW Zerada!!!) + xDevStudio + SQLLIB Visite São Luís - MA A Ilha dos Amores id=quote>id=quote>Estou Fazendo Assim: 1) Criei no Word um Arquivo Chamado ATENDE.DOC tem um tabela com alguns campos Ex.: [cliente], [servico], [lente], [esferico], etc. 2) no Fonte: local x, oWord, cModelo:=curdrive()+':\Otica\Atende.doc' oWord := TWord():New() // inicia o objeto OLE Word if oWord:IsVisible() oWord:Hide() endif oWord:OpenDoc( cModelo ) // abre o documento modelo for x=1 to len( aCampos ) oWord:Replace( '['+aCampos[x,1]+']' , aCampos[x,2] ) next //oWord:preview() // visualiza o documento no preview do Word //oWord:Visualizar() // visualiza o documento oWord:PrintDoc(.t.) // imprime o documento sem apresentar na tela oWord:end() ********************************************************** Ai o que acontece.. O programa até funciona ou seja não dá nenhum erro. Mas não imprime nada.. a tela parece abrir o word imprimir e fechar, mto rápido.. sem msg de erro.. É isso o que ocorre... xHarbour + BCC55 + FiveWin + xDevStudio - Tentando Aprender com os Irmãos
  24. citação:Bom, cadê o TWORD.PRG? Não o vejo declarado no teu projeto Abraços, Kleyber Derick xHarbour 1.1.0 + FWH 8.02 (BMW Zerada!!!) + xDevStudio + SQLLIB Visite São Luís - MA A Ilha dos Amores id=quote>id=quote>Kleyber.... estou tentando tmb usar esta classe tWord p/ xharbour, compilou tudo certo executa e ate muda no arquivo .DOC os campos, mas não imprime, o que será ? eu uso o Word 2007 tem alguma coisa a ver.... Obgdo!!!!!!!! T+ RONE xHarbour + BCC55 + FiveWin + xDevStudio - Tentando Aprender com os Irmãos
  25. citação:Tem como voce enviar os arquivos em zip normal, tem um arquivo em dicas aqui no forum..mas nao abre.. Ari estou procurando uma solução para criar relatorios/formulario de pedidos.. estou vendo tambem o www.fast-report.com..esse preciso saber se pode ..e o que enviar para o usuario final.. ou se cada cliente meu tem que comprar uma licenca.. estou vendo tambem o crystal report..ainda nao consegui o demo.. id=quote>id=quote>TEm como enviar para mim ronerli@uol.com.br xHarbour + BCC55 + FiveWin + xDevStudio - Tentando Aprender com os Irmãos
×
×
  • Create New...