AMBROSIO Posted December 1, 2010 Report Share Posted December 1, 2010 Quero algo tipo assim... ate tenho, mas nao esta funcionando.. _nQtd :=0 _cMasc:="9999999999" resumindo ... GET oGet[1] VAR _cProduto se unidade de medida do produto for KG,MIL,CEM... _cMasc:="9999999999.999" senao _cMasc:="9999999999" fim ... GET oGet[2] VAR _nQtd Picture _cMasc Outra coisa o cursor esta ficando na frente do numero digitado (q coisa estranha/feia rsrsr como corrigir isso tbm) Obrigado Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Editado por - ambrosio on 01/12/2010 11:29:00 Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 Quero algo tipo assim... ate tenho, mas nao esta funcionando.. _nQtd :=0 _cMasc:="9999999999" resumindo ... GET oGet[1] VAR _cProduto se unidade de medida do produto for KG,MIL,CEM... _cMasc:="9999999999.999" senao _cMasc:="9999999999" fim ... GET oGet[2] VAR _nQtd Picture _cMasc Outra coisa o cursor esta ficando na frente do numero digitado (q coisa estranha/feia rsrsr como corrigir isso tbm) Obrigado Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Editado por - ambrosio on 01/12/2010 11:29:00 Quote Link to comment Share on other sites More sharing options...
sambomb Posted December 1, 2010 Report Share Posted December 1, 2010 oSeuGet:cPicture := "99.999.999/9999-99" oSeuGet:oGet:Picture := "99.999.999/9999-99" oSeuGet:Refresh() SamirSSabreu@gmail.com samirabreu@hotmail.com Skype: SamirAbreu xHarbour 1.1.0 + FwXh 8.02id=black> "Acreditar é mais fácil do que pensar: Daà existem muito mais crentes do que pensadores.†Bruce Calvert Quote Link to comment Share on other sites More sharing options...
marcio1361303176 Posted December 1, 2010 Report Share Posted December 1, 2010 não sei se entendi direito a sua pergunta, mas uso algo parecido para determinar a picutre do plano de contas contabil. pois varia de contabilista para contabilista é mais ou menos assim que funciona O contabilista cadastra a mascara que ele quer usar para seu plano de contas. uns querem tipo assim 9.999.9999.99.9999 outras já querem assim 9.9999.99.99, etc... eu gravo no arquivo de parametros a mascara que o cara quer usar T_MASCARA_PLANO_CONTAS := parametros->MASCARA_PLANO_CONTAS REDEFINE vGET oT_CODIGO_CONTA var T_CODIGO_CONTA ID 4006 OF oDlg_CAD_plano_contas PICTURE (T_MASCARA_PLANO_CONTAS) COLOR CLR_PRETO,CLR_LWHITE Update id=code>id=code>Uma outra situação é o lance do usuario cadastrar CNPJ / CPF no meu caso uso um unico campo na tabela para isso então troco a picture conforme o usuario seleciona se é FISICO/JURIDICO NO COMBOBOX O CARA ESCOLHE, DAI O SISTEMA MUDA A MASCARA DA DIALOG REDEFINE COMBOBOX oT_TIPO_CLIENTE VAR T_TIPO_CLIENTE ITEMS {"Juridica","Fisica"} ID 4004 OF oDlg_CD_CLIENTES ON CHANGE (MASC_CLIENT(T_TIPO_CLIENTE,oT_CPF__CNPJ_CLIENTE,@T_CPF__CNPJ_CLIENTE)) COLOR CLR_PRETO,CLR_LWHITE Update REDEFINE GET oT_CPF__CNPJ_CLIENTE var T_CPF__CNPJ_CLIENTE ID 4006 OF oFld:aDialogs[ 1 ] PICTURE "@R 999.999.999-99" Valid( VCGC_CPF(T_CPF__CNPJ_CLIENTE,IF(T_TIPO_CLIENTE == "Juridica","CNPJ","CPF"),"S") ) A FUNCAO QUE FAZ ISSO ///============================================================================= /// Tem Por Finalidade Atualizar o Campo de CPF/CNPJ conf. caso ///============================================================================= Function MASC_CLIENT(T_TIPO_CLIENTE,oGet,T_CPF__CNPJ_CLIENTE) oT_CPF__CNPJ_CLIENTE:Refresh() IF T_TIPO_CLIENTE="Juridica" oGet:cPicture:="99.999.999/9999-99" oT_CPF__CNPJ_CLIENTE:Refresh() oGet:cPicture:="@R 99.999.999/9999-99" oGet:oGet:Picture:="@R 99.999.999/9999-99" oGet:Refresh() T_TXT_CNPJ_CLI := "Cnpj" T_TXT_INSC_CLI := "Insc.Estadual" T_TXT_NOME_CLI := "Razão Social" T_TXT_NASCIMEN := "In.Atividade" ElSE oGet:cPicture:="999.999.999-99" oT_CPF__CNPJ_CLIENTE:Refresh() oGet:cPicture:="@R 999.999.999-99" oGet:oGet:Picture:="@R 999.999.999-99" oT_CPF__CNPJ_CLIENTE:Refresh() oGet:Refresh() T_TXT_CNPJ_CLI := "Cpf" T_TXT_INSC_CLI := "Cart.Indentidade" T_TXT_NOME_CLI := "Nome" T_TXT_NASCIMEN := "Nascimento" EndIF oT_CPF__CNPJ_CLIENTE:Refresh() oT_TXT_CNPJ_CLI:Refresh() oT_TXT_INSC_CLI:Refresh() oT_TXT_NASCIMEN:Refresh() oT_TXT_NOME_CLI:Refresh() Return(.t.) id=code>id=code>Editado por - marcio on 01/12/2010 11:44:15 Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 citação:oSeuGet:cPicture := "99.999.999/9999-99" oSeuGet:oGet:Picture := "99.999.999/9999-99" oSeuGet:Refresh() SamirSSabreu@gmail.com samirabreu@hotmail.com Skype: SamirAbreu xHarbour 1.1.0 + FwXh 8.02id=black>"Acreditar é mais fácil do que pensar: Daà existem muito mais crentes do que pensadores.†Bruce Calvert id=quote>id=quote>Fiz isso mas tbm nao esta funcionando,,, ,,,alias soh funciona depois q digito um valor e volto para o primeiro GET Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 Static Function DigiEtiq() Local oDlg2 Local oFont2 Local nEtiq:=0,nQtde:=0,nInve:=0,cConta:="1",cContad:=SPACE(15) Local cArm:=SPACE(04),cMod:=SPACE(02),cJan:=SPACE(03),cProd:=SPACE(15),cDesc:=SPACE(40),cUnid:=SPACE(03) Private oGetd[11] Private cMasc:="999999999" oFont2 := TFont():New('Courier new',,-14,.T.) @ 100,300 TO 400,1000 DIALOG oDlg2 TITLE ".:Digitacao das fichas:." @ 010,005 BUTTON " Sair " SIZE 40,12 ACTION Sair2(oDlg2) @ 010,055 SAY "Contagem " OF oDlg2 PIXEL @ 025,055 SAY "Ficha " OF oDlg2 PIXEL @ 040,055 SAY "Armazem " OF oDlg2 PIXEL @ 055,055 SAY "Modulo " OF oDlg2 PIXEL @ 070,055 SAY "Janela " OF oDlg2 PIXEL @ 085,055 SAY "Produto " OF oDlg2 PIXEL @ 115,055 SAY "Quantidade " OF oDlg2 PIXEL @ 130,055 SAY "Inventariante " OF oDlg2 PIXEL @ 010,090 GET oGetd[9] VAR cConta PICT "9" VALID(cConta $("123")) OF oDlg2 PIXEL @ 010,250 GET oGetd[10] VAR cContad PICT "!!!!!!!!!!!!!!!" OF oDlg2 PIXEL @ 025,090 GET oGetd[1] VAR nEtiq PICT "999999" OF oDlg2 PIXEL @ 040,090 GET oGetd[2] VAR cArm OF oDlg2 PIXEL @ 055,090 GET oGetd[3] VAR cMod OF oDlg2 PIXEL @ 070,090 GET oGetd[4] VAR cJan OF oDlg2 PIXEL @ 085,090 GET oGetd[5] VAR cProd OF oDlg2 PIXEL @ 100,090 GET oGetd[6] VAR cDesc OF oDlg2 PIXEL @ 115,090 GET oGetd[7] VAR nQtde size 050,010 Picture cMasc OF oDlg2 PIXEL @ 115,145 GET oGetd[11] VAR cUnid OF oDlg2 PIXEL @ 130,090 GET oGetd VAR nInve PICT "9999" OF oDlg2 PIXEL oGetd[9]:SetFocus() oGetd[9]:bLostFocus:= {||Contagem(oGetd,cConta)} oGetd[1]:bLostFocus:= {||MostraEtq(nEtiq,oGetd,oDlg2,cConta) } AQUI EU RECEBO O POSSIVEL NOVO FORMATO "PICT"id=red> oGetd[7]:oGet:Picture:=cMasc oGetd[7]:Refresh() oGetd:bLostFocus:= {||GravaEtq(oDlg2,cConta,nQtde,nInve)} oGetd[10]:Disable() ACTIVATE DIALOG oDlg2 CENTERED Return id=red> Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Quote Link to comment Share on other sites More sharing options...
sambomb Posted December 1, 2010 Report Share Posted December 1, 2010 **************************************************************************** static function RedefinirMascara(vcCtipo,vGet,vCCpf,vSay1,vSay2) **************************************************************************** if vcCTipo="J" .and. vGet:cPicture != "99.999.999/9999-99" vCCpf := Space(18) vGet:cPicture := "99.999.999/9999-99" vGet:oGet:Picture := "99.999.999/9999-99" vGet:Refresh() vSay1:SetText("CNPJ") vSay2:SetText("Inscrição estadual") elseIf vcCTipo="F" .and. vGet:cPicture != "999.999.999-99" vCCpf := Space(14) vGet:cPicture := "999.999.999-99" vGet:oGet:Picture := "999.999.999-99" vGet:Refresh() vSay1:SetText("CPF") vSay2:SetText("Nr. documento") end oDlg:Update() return .t. id=code>id=code> SamirSSabreu@gmail.com samirabreu@hotmail.com Skype: SamirAbreu xHarbour 1.1.0 + FwXh 8.02id=black> "Acreditar é mais fácil do que pensar: Daà existem muito mais crentes do que pensadores.†Bruce Calvert Editado por - sambomb on 01/12/2010 14:04:42 Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 citação: **************************************************************************** static function RedefinirMascara(vcCtipo,vGet,vCCpf,vSay1,vSay2) **************************************************************************** if vcCTipo="J" .and. vGet:cPicture != "99.999.999/9999-99" vCCpf := Space(18) vGet:cPicture := "99.999.999/9999-99" cPicture? NAO ENTENDI... id=red> vGet:oGet:Picture := "99.999.999/9999-99" vGet:Refresh() vSay1:SetText("CNPJ") vSay2:SetText("Inscrição estadual") elseIf vcCTipo="F" .and. vGet:cPicture != "999.999.999-99" vCCpf := Space(14) vGet:cPicture := "999.999.999-99" vGet:oGet:Picture := "999.999.999-99" vGet:Refresh() vSay1:SetText("CPF") vSay2:SetText("Nr. documento") end oDlg:Update() return .t. id=code>id=code> SamirSSabreu@gmail.com samirabreu@hotmail.com Skype: SamirAbreu xHarbour 1.1.0 + FwXh 8.02id=black>"Acreditar é mais fácil do que pensar: Daà existem muito mais crentes do que pensadores.†Bruce Calvert Editado por - sambomb on 01/12/2010 14:04:42 id=quote>id=quote>Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Quote Link to comment Share on other sites More sharing options...
Luisão Posted December 1, 2010 Report Share Posted December 1, 2010 Ambrosio, faço do mesmo modo como o Samir citou (inclusive para o mesmo caso, trocar máscara de CPF e CNPJ) e funciona certinho. Você está usando do mesmo modo que ele mostrou ? _cMasc:="9999999999.999" senao _cMasc:="9999999999" fim oGet[2]:cPicture := _cMasc oGet[2]:oGet:Picture := _cMasc oGet[2]:Refresh()id=code>id=code> Luis Fernando Jr. (Luisão) Leme/SP -- FWH8.01 + SQLLIB 1.9d + xHB 1.10 + xDev 0.65 + @SAY juninho.luisao@gmail.com juninho_luisao@hotmail.com Skype luis.fernando.jr Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 citação:Ambrosio, faço do mesmo modo como o Samir citou (inclusive para o mesmo caso, trocar máscara de CPF e CNPJ) e funciona certinho. Você está usando do mesmo modo que ele mostrou ? _cMasc:="9999999999.999" senao _cMasc:="9999999999" fim oGet[2]:cPicture := _cMasc cPicture DA ERRO, de onde vem cPicture? id=red> oGet[2]:oGet:Picture := _cMasc oGet[2]:Refresh()id=code>id=code> Luis Fernando Jr. (Luisão) Leme/SP -- FWH8.01 + SQLLIB 1.9d + xHB 1.10 + xDev 0.65 + @SAY juninho.luisao@gmail.com juninho_luisao@hotmail.com Skype luis.fernando.jr id=quote>id=quote>Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Quote Link to comment Share on other sites More sharing options...
sambomb Posted December 1, 2010 Report Share Posted December 1, 2010 cPicture é a máscara do GET, se abrir a classe TGet vc vai achar... SamirSSabreu@gmail.com samirabreu@hotmail.com Skype: SamirAbreu xHarbour 1.1.0 + FwXh 8.02id=black> "Acreditar é mais fácil do que pensar: Daà existem muito mais crentes do que pensadores.†Bruce Calvert Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 FIZ ASSIM... NAO SEI ONDE TO ERRANDO E SE EU USAR oGet[2]:cPicture DA ERRO //************************ User Function DigiMasc() Local oDlg2 Local oFont2 Local nQtde:=0 Local cProd:=SPACE(15) Private oGetd[02] Private cMasc:="99999999999999" oFont2 := TFont():New('Courier new',,-14,.T.) @ 100,300 TO 400,1000 DIALOG oDlg2 TITLE ".:Digitacao das fichas:." @ 010,005 BUTTON " Sair " SIZE 40,12 ACTION Sair2(oDlg2) @ 025,055 SAY "Produto " OF oDlg2 PIXEL @ 115,055 SAY "Quantidade " OF oDlg2 PIXEL @ 025,090 GET oGetd[1] VAR cProd PICT "@!" OF oDlg2 PIXEL @ 115,090 GET oGetd[2] VAR nQtde size 050,010 Picture cMasc OF oDlg2 PIXEL oGetd[1]:bLostFocus:= {||Munid(oGetd,oDlg2,cProd) } oGetd[2]:oGet:Picture:=cMasc oGetd[2]:Refresh() oGetd[1]:SetFocus() ACTIVATE DIALOG oDlg2 CENTERED Return //******************* Static Function Sair2_(oDlg2) oDlg2:end() Return //******************* Static FUNCTION Munid(oGetd,oDlg2,cProd) cMasc:="9999999999.999" oGetd[2]:oGet:Picture:="9999999999.999" //cMasc:="99999999999999" //oGetd[7]:oGet:Picture:="99999999999999" oGetd[2]:Refresh() return Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 Invalid propert "cPicture" Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Quote Link to comment Share on other sites More sharing options...
kapiaba Posted December 1, 2010 Report Share Posted December 1, 2010 // Local oDlg, oGet, oBtn // Local lTest := .t. // Local cTipo := "J", oTEST1,oTest2 // Local cCGCCPF := Space(14) @ 10, 2 GET oTEST1 VAR cTipo pixel OF oDlg PICTURE "!"; valid VerificaAltera(cTipo,oTest2,@cCgcCpf) Function VerificaAltera(cTipo,oGet,cCgc) If !cTipo$"F/J" MsgStop("Deve ser digitado (F)isicio (J)uridico","Teste") Return(.F.) Endif If cTipo="J".and.oGet:cPicture!="@R 99.999.999/9999-99" cCgc:=Space(14) oGet:cPicture:="@R 99.999.999/9999-99" oGet:oGet:Picture:="@R 99.999.999/9999-99" oGet:Refresh() ElseIf cTipo="F".and.oGet:cPicture!="@R 999.999.999-99" cCgc:=Space(11) oGet:cPicture:="@R 999.999.999-99" oGet:oGet:Picture:="@R 999.999.999-99" oGet:Refresh() Endif Return(.t.) id=code>id=code> João Santos - São Paulo. kmt_karinha@pop.com.br joao@pleno.com.br Fone: (11) 3106-2832 / 8243-5632 FWH 2.7 - xHARBOUR WorkShop.Exe Editado por - kapiaba on 01/12/2010 15:26:08 Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 citação: // Local oDlg, oGet, oBtn // Local lTest := .t. // Local cTipo := "J", oTEST1,oTest2 // Local cCGCCPF := Space(14) @ 10, 2 GET oTEST1 VAR cTipo pixel OF oDlg PICTURE "!"; valid VerificaAltera(cTipo,oTest2,@cCgcCpf) Function VerificaAltera(cTipo,oGet,cCgc) If !cTipo$"F/J" MsgStop("Deve ser digitado (F)isicio (J)uridico","Teste") Return(.F.) Endif If cTipo="J".and.oGet:cPicture!="@R 99.999.999/9999-99" cCgc:=Space(14) oGet:cPicture:="@R 99.999.999/9999-99" oGet:oGet:Picture:="@R 99.999.999/9999-99" oGet:Refresh() ElseIf cTipo="F".and.oGet:cPicture!="@R 999.999.999-99" cCgc:=Space(11) oGet:cPicture:="@R 999.999.999-99" oGet:oGet:Picture:="@R 999.999.999-99" oGet:Refresh() Endif Return(.t.) id=code>id=code> João Santos - São Paulo. kmt_karinha@pop.com.br joao@pleno.com.br Fone: (11) 3106-2832 / 8243-5632 FWH 2.7 - xHARBOUR WorkShop.Exe Editado por - kapiaba on 01/12/2010 15:26:08 id=quote>id=quote> puta que parilllll .... pq todos estao usando este "cPicture" e comigo da ERROOOOO???? id=red> Desculpa o desabafo..rsrsrsrrs eh que chega num momento que temos que botar pra fora.... Acho q vou fazer diferente vou validar apos o usuario digitar a quantidade.... NAO QUERO QUE NA DIGITAÇÃO O "SR. USUARIO" ACABE DIGITANDO 0,5 PECASid=red> isso me dói na alma Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Quote Link to comment Share on other sites More sharing options...
kapiaba Posted December 1, 2010 Report Share Posted December 1, 2010 KKKKKKKKKKKKKKK, EU ACHO QUE ESTÃO TENTANDO TE CONFUNDIR MAIS DO QUE VOCÊ Jà CKONFUSO!! João Santos - São Paulo. kmt_karinha@pop.com.br joao@pleno.com.br Fone: (11) 3106-2832 / 8243-5632 FWH 2.7 - xHARBOUR WorkShop.Exe Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 Blz... posso ser loiro, ter cara de tanço, mas nao sou besta!!! Vou fazer diferente, alias ja fiz. VALIDEI apos a digitação....Pronto!!! Ta certo q nao ficou uma programação ELEGANTE, mas ficou simplezinn e bunitinnn... kkkkkk OBRIGADO A TODOS QUE TENTARAM ME AJUDAR....COMO SEMPRE , TODOS SAO MUITO PRESTATIVOS.... ABRAÇAO A TODOS Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Quote Link to comment Share on other sites More sharing options...
Luisão Posted December 1, 2010 Report Share Posted December 1, 2010 Ambrosio, qual versão do FW você usa ? Na sua assinatura está Clipper 5.0 Luis Fernando Jr. (Luisão) Leme/SP -- FWH8.01 + SQLLIB 1.9d + xHB 1.10 + xDev 0.65 + @SAY juninho.luisao@gmail.com juninho_luisao@hotmail.com Skype luis.fernando.jr Quote Link to comment Share on other sites More sharing options...
AMBROSIO Posted December 1, 2010 Author Report Share Posted December 1, 2010 Trabalho com ADVPL/Protheus-10 que utiliza tbm FWH em sua biblioteca, que por sinal deve ter uma versao que nao sei qual eh e que nao deve ter a TGet que todos falaram, atualizada. Abraço Ambrosio de Barros Filho. JRAMBRO - jrambro@hotmail.com Curitiba/São José dos Pinhais - PR Clipper5.0/ADVPL Quote Link to comment Share on other sites More sharing options...
sambomb Posted December 1, 2010 Report Share Posted December 1, 2010 Isso que eu ia falar, até onde eu sei na 8.02 pelo menos que é a que eu uso funciona normal dessa forma... SamirSSabreu@gmail.com samirabreu@hotmail.com Skype: SamirAbreu xHarbour 1.1.0 + FwXh 8.02id=black> "Acreditar é mais fácil do que pensar: Daà existem muito mais crentes do que pensadores.†Bruce Calvert Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.