Jump to content
Fivewin Brasil

gibaf

Membros
  • Posts

    1,678
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by gibaf

  1. ola poderia, por favor, postar um demo de como fazer select em dbf ? obrigado
  2. ola... desculpe pela demora da resposta... estou usando a versao 8.00.60 (Win 64) abrado Gilberto
  3. gibaf

    upx

    fiz essa pergunta aki no forum, porque fiz o teste, sem UPX e com UPX, e, a principio, pelo menos a olho nu, nao vi a diferenca... a minha duvida em relacao a isso, eh pq Luiz Culik, deu essa resposta num mail dele: Olá o upx só faz demorar mais pra carregar o executável. Abraços Luiz
  4. gibaf

    upx

    obrigado por responder... nao estou com problema de estar segurando o processo, a duvida mesmo eh se programa utilizado o UPX, faz demorar mais para carregar o executavel... fiz o teste e, a olho nu, nao vi a diferenca na execucao...
  5. gibaf

    upx

    ola.. obrigado por responder.. o UPX faz reduzir o tamanho do executavel... a questao nao esta se tem ou nao o motivo pra ainda ser feito.. a pergunta eh se, pelo fato de ter usado o UPX, se faz demorar mais para carregar o executavel... fiz o teste e, a olho nu, nao vi a diferenca na execucao... mesmo assim, obrigado pela resposta...
  6. gibaf

    upx

    ola a todos !!! alguem sabe dizer se o UPX faz demorar mais para carregar o executavel ? tem alguma outra "contra-indicacao" (hehe) ?? desde agradeco: MUITO OBRIGADO !!!
  7. aaaa.. esqueci de dizer, nao deu nem tempo de piscar.. teste feito em tabela perto de 1 milhao de registro...
  8. a solucao q foi ideal, para o meu caso, foi assim: RddRegister( "ADS", 1 ) RddSetDefault("ADSCDX") // ADS AdsLocking( .T. ) AdsRightsCheck( .F. ) AdsTestRecLocks(.T.) AdsCacheOpenTables(40) AdsSetServerType(1) // 1=Local ; 2=Server ; 7=AIS Internet AdsSetFileType(2) // 1=NTX ; 2=CDX ; 3=ADT AdsSetDateFormat("DD/MM/YY") dbUseArea("CLIENTE") wFilter := "ESTADO = 'SP' " lFilter := AdsSetAof( wFilter ) //faz o filtro dbSetOrder(1) //ordem de codigo browse dbSetOrder(2) //ordem de nome browse dbSetOrder(3) //ordem de estado browse ADSClearAOF() // Desfaz o Filtro
  9. facin: *-------------- Function Main() *-------------- Local cConteudo := "A Carta de Correção é disciplinada pelo § 1º-A do art. 7º do Convênio S/N, de 15 de dezembro de 1970 e pode ser utilizada para regularização de erro ocorrido na emissão de documento fiscal, desde que o erro não esteja relacionado com: I - as variáveis que determinam o valor do imposto tais como: base de cálculo, alíquota, diferença de preço, quantidade, valor da operação ou da prestação; II - a correção de dados cadastrais que implique mudança do remetente ou do destinatário; III - a data de emissão ou de saída." Local cConteudoSemAcentos := TiraAcentos(cConteudo) msgAlert(cConteudo) msgAlert(cConteudoSemAcentos) Return(Nil) *------------------------------------- Static Function TiraAcentos(_Conteudo) *------------------------------------- Local x,cRet := _Conteudo Local aArray1 := {"Á","É","Í","Ó","Ú","á","é","í","ó","ú","Â","Ê","Ô","â","ê","ô","Ã","ã","Õ","õ","Ç","ç"} Local aArray2 := {"A","E","I","O","U","a","e","i","o","u","A","E","O","a","e","o","A","a","O","O","C","c"} For x := 1 to Len(aArray1) cRet := StrTran( cRet , aArray1[x] , aArray2[x] ) Next x Return(cRet)
  10. quem conhece os 2, sabe q o Pelles C eh superior... veja bem, estou desconsiderando a PREFERENCIA (ja vi em varios topicos vc dizer ter PREFERENCIA pelo WS)... vc, certamente conhece ou ja usou os dois.. deixe de lado a PREFERENCIA... foi a resposta q dei, o Pelles C eh mil vezes melhor.. agora, vc PREFERINDO o WS, vai dizer q eh o WS.. eu estou deixando a opcao "preferencia" de lado... hehehe.. estou dizendo, dentre os 2, qual eh o melhor...rss att
  11. ola eu tentei usar da forma q vc mostrou, mas ficou inviavel pelo motivo q escrevi, pois, tipo, faco um filtro pra mostrar soh os registros do estado de SP, mas, posso ainda querer ordenar pela ordem: 1) codigo 2) nome 3) ou mesmo por estado, se o filtro eh um outro. e da forma q vc falow, hora criar um temporario pra ordem 1, hora outro temporario pra hordem 2, etc.. tambem inviavel... pensei q vc tivesse um segredo pra fazer funcionar no comentario q fiz, mas ja deu sua resposta... infelizmente, pra minha situacao, ainda, inviavel fazer filtro com o temporario. ainda tem a coisa de desfazer o filtro.... abraco
  12. mil vezes melhor (desconsiderando preferencia) o Pelles C. att Gilberto
  13. ola e, como vc faz, por exemplo, para a situacao abaixo: digamos q vc tenha 3 indices (por TAG), digamos, na tabela de clientes, por: 1) codigo 2) nome 3) estado ou seja, vc pode utilizar o dbSetOrder(1), dbSetOrder(2) e dbSetOrder(3) entao, vc faz o filtro pra mostrar os registros do estado de SP. Como vc faz pra esse filtro ficar nos 3 indices acima, pro filtro funcionar quando utiilizar o dbSetOrder(1), dbSetOrder(2) e dbSetOrder(3) ? pois esse filtro desejo q fique ativo, nao somente no novo indice... me entendeu ? qual a forma pra fazer isso ae em cima ? obrigado
  14. falow... muito obrigado !!! isso mesmo !
  15. ola a todos tem como a rotina q esta sendo executada no MsgRun() ir alterando a mensagem q fica aparecendo (cCaption) ??? Nesse caso exclusivamente, tenho q usar o MsgRun(), e nao pode ser pela classe TProgress() ou ainda pela classe TMeter() Desde ja agradeco a ajuda: MUITO OBRIGADO !!!!
  16. gibaf

    KEYBOARD

    OLA obrigado por responder... penso q isso nao vai resolver, pq esse eh comando/funcao do (x)Harbour... e pelo q li alguma vez, é o fivewin q faz "perder" os enters q ficaram no buffer do teclado... penso, q teria q ser um recurso do fivewin... mas, de qquer forma, obrigado, mais uma vez, por responder !!!
  17. gibaf

    KEYBOARD

    ola a todos no Clipper, se eu tivesse q dar GET em 100 variaveis, se ficava pressionando a tecla enter, ficava no buffer, e soltava o enter, se via o cursos alternando nos GET`s... isso no fivewin nao tem. alguem tem alguma solucao pra ter isso no fivewin ??? desde ja agradeco: MUITO OBRIGADO !!!
  18. OBRIGADO A TODOS PELAS DICAS vamos implementar e colocar no cliente... dae, aviso se resolveu... obrigado mais uma vez !
  19. a data esta ok , nao tem dedo de usuario ,etc... isso ocorre logo na sequencia da queda da energia.
  20. ola a todos... em alguns clientes esta acontecendo muito QUEDA DE ENERGIA, apartir dae, alguns titulos ja pagos, voltam como se nao foram ainda pagos... alem disse, tambem, some uns registros de banco/caixa... aparentemente, somente essas duas tabelas sofreram com a QUEDA DE ENERGIA... gostaria saber de vcs, se tem alguma forma pra evitar/preve a perca das informacoes guardados em dbf/cdx, via programacao (sei q pode ter alguns q vao sugerir no-break, etc....) ?? desde ja agradeco a ajuda: MUITO OBRIGADO !!!!
  21. ola obrigado por responder... mas, verificar, onde exatamente ??
  22. outra coisa... vamos dizer q seja usado (nao vai ser) o GET na validacao, mesmo lançando dados, onde esta em negrito, a variavel wVar esta vazio, mesmo dando refresh... e agora ???? #Include "FiveWin.ch" #Include "\Sistemas\Include\VGet.ch" *-------------- Function Main() *-------------- Private oFonGet := TFont():New("Ms Sans Serif",06,07 ,,.F.,,,,,,,,,,,,) Private oDlgMain DEFINE DIALOG oDlgMain From 00,00 to 540,795 TITLE "Teste." PIXEL COLORS CLR_WHITE,CLR_WHITE STYLE nOr(DS_MODALFRAME) @ 10,10 BUTTON "Faz Get" OF oDlgMain SIZE 100,30 PIXEL ACTION FazGet() ACTIVATE DIALOG oDlgMain Return(Nil) *----------------------- Static Function FazGet() *----------------------- Local oFonGet := TFont():New("Ms Sans Serif",06,07 ,,.F.,,,,,,,,,,,,) Private oDlg,oGet,oBtn,oGrp Private wVar := Space(15) , lCloseGet := .F. , lRetOk := .F. DEFINE DIALOG oDlg FROM 200,100 TO 300,400 PIXEL STYLE nOr( WS_POPUP, WS_VISIBLE ) OF oDlgMain @ 20,20 GET oGet VAR wVar OF oDlg PIXEL SIZE 115,15 COLOR CLR_BLACK,CLR_WHITE FONT oFonGet oGet:bKeyDown := { | nKey | ValidaGet(nKey) } ACTIVATE DIALOG oDlg VALID lCloseGet ON INIT oDlg:oClient:=oGet //ON PAINT ValidaGet() hb_gcAll() Return(Nil) *------------------------------ Static Function ValidaGet(_Key) *------------------------------ Local lRet := .F. If _Key = 9 .or. _Key = 13 //9=Tab ; 13=Enter //oGet:Refresh //SysRefresh() lRet := !Empty(Alltrim(wVar)) // Faz a Validacao e retorna .T. ou .F. lRetOk := lRet MsgAlert( iif( lRet , "Valido" , "Invalido" ) ) If lRet lCloseGet := .T. oDlg:End() Endif Endif Return(lRet)
  23. ola a todos primeiramente, muito obrigado a todos q responderam... a principio poderia, sim, utilizar o bKeyDown, com um pequeno detalhe (hehehe): no demo q fiz, usei a classe TGET, mas na app, eh usado a classe VGET. com a classe GET funciona perfeitamente, como preciso, mas com a classe VGET q eh a q vou ter usar, nao funciona o bKeyDown, tipo, nao executa a funcao ValidaGet(), dei um alert no _Key mas nao sae com o ENTER nem com o TAB: segue o bloco, com o VGET: #Include "FiveWin.ch" #Include "\Sistemas\Include\VGet.ch" *-------------- Function Main() *-------------- Private oFonGet := TFont():New("Ms Sans Serif",06,07 ,,.F.,,,,,,,,,,,,) Private oDlgMain DEFINE DIALOG oDlgMain From 00,00 to 540,795 TITLE "Teste." PIXEL COLORS CLR_WHITE,CLR_WHITE STYLE nOr(DS_MODALFRAME) @ 10,10 BUTTON "Faz Get" OF oDlgMain SIZE 100,30 PIXEL ACTION FazGet() ACTIVATE DIALOG oDlgMain Return(Nil) *----------------------- Static Function FazGet() *----------------------- Local oFonGet := TFont():New("Ms Sans Serif",06,07 ,,.F.,,,,,,,,,,,,) Private oDlg,oGet,oBtn,oGrp Private wVar := Space(15) , lCloseGet := .F. , lRetOk := .F. DEFINE DIALOG oDlg FROM 200,100 TO 300,400 PIXEL STYLE nOr( WS_POPUP, WS_VISIBLE ) OF oDlgMain @ 20,20 VGET oGet VAR wVar OF oDlg PIXEL SIZE 115,15 COLOR CLR_BLACK,CLR_WHITE FONT oFonGet oGet:bKeyDown := { | nKey | ValidaGet(nKey) } ACTIVATE DIALOG oDlg VALID lCloseGet ON INIT oDlg:oClient:=oGet //ON PAINT ValidaGet() hb_gcAll() Return(Nil) *------------------------------ Static Function ValidaGet(_Key) *------------------------------ Local lRet := .F. If _Key = 9 .or. _Key = 13 //9=Tab ; 13=Enter lRet := .T. // Faz a Validacao e retorna .T. ou .F. lRetOk := lRet MsgAlert( iif( lRet , "Valido" , "Invalido" ) ) If lRet lCloseGet := .T. oDlg:End() Endif Endif Return(lRet) SE alguem q usa o VGET puder me ajudar nisso, acho q resolvo de vez.... desde ja: MUITO OBRIGADO !!!
×
×
  • Create New...