Jump to content
Fórum Script Brasil

Jhonas

Monitores
  • Content Count

    9574
  • Joined

Community Reputation

0 Neutro

About Jhonas

Perfil

  • Gender
    Male
  • Location
    São Paulo

Recent Profile Visitors

24702 profile views
  1. Jhonas

    Consulta Cnpj Raiz

    Poderia até usar a sua dica acima, mas toda vez que precisaria pagar uma condição especial para um cnpj_raiz teria que alterar o código fonte, assim para facilitar criei a tabela clidife.db e ai o próprio usuário cadastra nela os cnpj_raiz sem precisar que eu altere o código. então na consulta na tabela CTRCT-DB faz a busca de todos os faturamentos por cliente analisando os cnpj_cif_raiz cadastrado na tabela CLIDIFE.db se tiver uma ideia de como fazer ... amigo, para facilitar, voce pode criar um campo a mais na sua tabela ( CTRCT ), que passaria a ser o seu controle ( condição especial ) ... aí no seu select bastaria apenas voce informar o valor desse controle para trazer todos os CNPJs nessa condição e pronto. ( Isso vai fazer voce eliminar boa parte do código ) Voce pode fazer o que está querendo, usando apenas uma tabela...basta apenas criar campos de controle. Se o seu programa já está rodando em algum lugar, voce pode implementar um código ( em algum lugar do programa ... tipo no evento OnDblClick de um Label para que o usuário clique nele apenas uma unica vez para alterar a tabela ) para adicionar os campos que voce quer na sua tabela, sem alterar os dados existentes que estão nela. Depois voce modifica o seu código fonte e pouca coisa no seu formulário e envia o executável para o seu cliente. Isso pode até dar um pouco de trabalho, mas no fim compensa. abraço
  2. Jhonas

    Consulta Cnpj Raiz

    Tente dessa maneira procedure TForm1.Button1Click(Sender: TObject); var Txt1, vCNPJ : string; begin vCNPJ := '53.258.117'; Query1.Active := false;; Txt1 := 'SELECT * FROM CTRCT WHERE CTRCT.DEST_CNPJ LIKE :Pcnp'; Query1.SQL.Clear; Query1.SQL.Text := Txt1; Query1.ParamByName('Pcnp').AsString := '%' + vCNPJ; Query1.Active := true; end; Obs: Dessa maneira voce vai inverter a busca pelos primeiros numeros do CNPJ E se voce quiser buscar outros valores, faça isso: vCNPJ := Edit1.Text Dessa maneira, joga o CNPJ em um Edit, e passa o valor para a variavel vCNPJ exemplo: se voce digitar somente o numero 7, a busca na tabela será em cima de todos os CNPJs que começam com o numero 7 -------------------------------------------------------------- trazer todos os dados da tabela Ctrct.DB a qual foi cadastrado o cnpj raiz na tabela Clidife. Tipo na CtrcT.db esta assim cadastrado o cnpj 77.777.777/0001-00 e na tabela Clidife.db assim 77.777.777 somente Não sei porque voce está usando 2 tabelas com os mesmos dados ( duplicidade de informação ).... voce pode buscar os CNPJs pelos numeros iniciais e se não quiser o valor restante depois da barra, voce pode tirar abraço
  3. Jhonas

    Consulta Cnpj Raiz

    Tente assim procedure TForm1.Button1Click(Sender: TObject); var Txt1, CNPJ : string; begin CNPJ := '53.258.117'; Query1.Active := false;; Txt1 := 'SELECT * FROM CTRCT WHERE CTRCT.DEST_CNPJ LIKE :cnp'; Query1.SQL.Clear; Query1.SQL.Text := Txt1; Query1.Params(0).AsString := CNPJ + '%'; Query1.Active := true; end; OBS: voce definiu o parametro ( cnp ) tipo string no componente Query ?
  4. Jhonas

    Consulta Cnpj Raiz

    O erro é que o dataset não está em modo de edição ou inserção. voce não pode fazer isso Query1Cnpj.AsString:=Cnpj; procedure TForm1.Button1Click(Sender: TObject); var Txt1, CNPJ : string; begin CNPJ := '53.258.117'; Query1.Close; Txt1 := 'SELECT * FROM CTRCT WHERE CTRCT.DEST_CNPJ LIKE :cnpj+"%"'; Query1.SQL.Clear; Query1.SQL.Text := Txt1; Query1.Open; end; Obs: Faça o teste e poste o resultado abraço
  5. Varios exemplos: https://www.google.com.br/search?source=hp&ei=Px1-Xs6NAuLA5OUPiJq_8Ak&q=ligar+e+desligar+leds+c%2B%2B&o que=ligar+e+desligar+leds+c%2B%2B&gs_lcp=CgZwc3ktYWIQAzoCCAA6BQgAEIMBOgcIABBGEPkBOgcIABBGEP8BOgUIABDNAjoGCAAQFhAeUMYRWPprYJB0aABwAHgAgAGWAogByB-SAQYwLjIyLjSYAQCgAQGqAQdnd3Mtd2l6sAEA&sclient=psy-ab&ved=0ahUKEwiOqYzO_broAhViILkGHQjND54Q4dUDCAU&uact=5 https://www.google.com.br/search?ei=Th1-Xu3XMs7Y5OUPwr2XWA&q=ligar+e+desligar+leds+c%2B%2B+time()&o que=ligar+e+desligar+leds+c%2B%2B+time()&gs_lcp=CgZwc3ktYWIQAzoECAAQRzoFCCEQoAFQtqQIWLjACGDCxwhoAHAEeACAAZgCiAGeC5IBBTAuNC4zmAEAoAEBqgEHZ3dzLXdpeg&sclient=psy-ab&ved=0ahUKEwjtttDV_broAhVOLLkGHcLeBQsQ4dUDCAo&uact=5 https://www.circuitar.com.br/projetos/acendendo-um-led/index.html https://actire.com.br/wa_files/linguagem c para arduino_unidade 1.pdf abraço
  6. Jhonas

    Consulta Cnpj Raiz

    ERRO: SELECT * FROM CTRCT, CLIDIFE WHERE (CTRCT.DEST_CNPJ LIKE CLIDIFE.CNPJ_CPF_RAIZ+'%') //CLIDIFE.CNPJ_CPF_RAIZ ARMAZENA CNPJ RAIZ ORDER BY CTRCT.NUMERO_CTRC OBS: Voce esta usando um campo da sua propria tabela que não terá valor algum quando o Select for executado ========================================================== mas se eu faço desta forma funciona perfeitamente: SELECT * FROM CTRCT WHERE CTRCT.DEST_CNPJ LIKE '53.258.117'+'%' ORDER BY NUMERO_CTRC Veja que voce usou apostrofes para separar o numero ( string ) , então se no lugar do numero voce quer usar uma variavel ou um parametro, deve ser feito a mesma coisa. ====================================================== usando uma variável que receberá o valor do numero CNPJ : string; CNPJ := '53.258.117' 'SELECT * FROM CTRCT WHERE CTRCT.DEST_CNPJ LIKE '+ ''''+ CNPJ + '''' + '%' ORDER BY NUMERO_CTRC usando um parametro que receberá o valor do numero 'SELECT * FROM CTRCT WHERE CTRCT.DEST_CNPJ LIKE :CNPJ '+ '%' ORDER BY NUMERO_CTRC Obs: Se voce usar parametro, o mesmo deve estar definido no componente ( TQuery ou ClientDataSet ) e deve receber o valor antes de executar o Select abraço
  7. Jhonas

    Dúvida

    Voce programa de uma maneira diferente, mas a lógica é sempre a mesma. 1 - Quando voce inicializa o programa, voce deve abrir somente a tabela que tem os dados de senha ( se voce usar senha ) e as demais tabelas permanecem fechadas. 2 - No menu, quando voce escolhe uma opção e abre um formulario, no envento onde ativa o formulario voce deixa as tabelas desse formulario fechadas . 3 - Se por exemplo, voce quer Localizar um registro da sua Tabela.... então voce vai clicar no botão < Localizar > desse formulário e no evento Click do botão, voce vai colocar os comandos para receber a variavel com o valor de um componente Texto Depois passa esse conteudo para um parametro dentro de um comando do Access e somente depois disso é que voce ativa a tabela, para que o registro seja localizado e mostrado nos campos do formulário. Essa lógica vale para o Imprimir ou excluir um registro da sua tabela. A lógica independe do tipo de banco de dados que voce esteja usando... só muda a maneira como voce usa os comandos. Veja esses exemplos https://www.google.com.br/search?ei=gxR-XtfRNcCz5OUPpYargA4&q=cadastro+de+clientes+access+download&o que=cadastro+de+clientes+ac&gs_lcp=CgZwc3ktYWIQARgBMgIIADICCAAyAggAMgYIABAWEB4yBggAEBYQHjIGCAAQFhAeMgYIABAWEB4yBggAEBYQHjIGCAAQFhAeMgYIABAWEB46BAgAEEdQmtwxWIzfMWD29zFoAHACeACAAYwBiAGQApIBAzAuMpgBAKABAaoBB2d3cy13aXo&sclient=psy-ab abraço
  8. Jhonas

    Dúvida

    O meu problema em questão é que preciso que ele abra sem dados ao executar pela primeira vez, ou seja, apenas uma vez sempre que inicio o sistema Voce pode deixar a Tabela fechada quando iniciar o sistema e depois que executar o Localizar ou Imprimir é que voce abre a tabela para que os dados sejam mostrados. abraço
  9. Veja nesses links: http://docwiki.embarcadero.com/RADStudio/Rio/en/Mobile_Tutorials:_Mobile_Application_Development_(iOS_and_Android) http://docwiki.embarcadero.com/RADStudio/Rio/en/DCCIOS32.EXE,_the_Delphi_Compiler_for_the_iOS_Simulator abraço
  10. Jhonas

    FAST REPORT

    Quando voce executa essa ação, aparece alguma mensagem ? Veja se esse link te ajuda http://anaprogramadorajunior.blogspot.com/2013/10/fastreport-no-delphi.html abraço
  11. perceba que os 2 ultimos itens, objetos Fitens e Ftitulos estão vazios porque realmente não sei como preenche-los. VItens : TArrayItens; VTitulos : TArrayTitulos; Veja se esse exemplo te ajuda: https://www.projetoacbr.com.br/forum/topic/51803-pegar-valor-de-array-json-dentro-de-um-array-json-ifood/ ou esses https://www.google.com.br/search?ei=lTR2XqegBpTE5OUPr6KrwA8&q=array+json+delphi&o que=array+json&gs_l=psy-ab.1.2.0l10.393148.401126..406010...3.2..0.196.1706.4j11......0....1..gws-wiz.....0..0i71j0i67j0i10..26%3A111.HxU2-iZFOc4 OBS: como teste, tente ler apenas um item do array ou jogue o conteudo do array num TMemo abraço
  12. Acho que vai encontrar a solução num desses links: https://www.google.com.br/search?ei=DOV0XvL8DPfH5OUPtOuYgAc&q=get+value+from+json+object+delphi&o que=json+get+value+delphi&gs_l=psy-ab.1.1.0i22i30l3.4420.9820..18068...0.2..0.234.1128.0j6j1......0....1..gws-wiz.......0i71j0j0i67j33i22i29i30..26%3A133.PVPTvUCletc abraço
  13. acho que a sua ideia do for seria interessante mas não sei exatamente como montar o código. meu código completo no onprint é este: If (QueryCTRCDest_Cnpj.asstring = QueryCLIENTESCnpj_Cpf.AsString) then begin PercVen := 50; {variavel global} Value:=FloatToStr((Query1Valor_Frete.asFloat * PercVen)/100); end else begin PercVen := 25; {variavel global} Value:=FloatToStr((Query1Valor_Frete.asFloat * PercVen)/100); end; Ok .... se as suas tabelas estão dentro do QuickReport ou fora dele não importa. Voce deve lembrar, que no QuickReport a banda Detail esta lendo resgistro a registro da sua tabela. Então, voce deve colocar o seu código nessa banda e se for o caso utilize uma variavel dentro do proprio QuickReport para jogar o valor que voce precisa dentro do QRLabel. No Delphi existe exemplos do uso de tabelas no quickreport ... veja na aba Demos na Pasta Quickrpt do delphi ( exemplos QR2 ou QR3 ) abraço
  14. Gostaria de uma solução que comparasse todos os clientes cadastradas na tabela QUERYCLIENTES e não só i primeiro cliente Voce pode colocar esse comando dentro de um For ou While, para que voce possa testar todos os registros da Tabela, ou usar um comando Select dentro de um componente TQuery exemplo: For i := 1 to QUERYCLIENTES do begin If (QueryCTRCDest_Cnpj.asstring = QueryCLIENTESCnpj_Cpf.AsString) then begin PercVen := 50; Value:=FloatToStr((Query1Valor_Frete.asFloat * PercVen)/100); end else ///// outros comandos end; OBS: Como voce não informou qual o banco de dados está usando, vou colocar os exemplos do uso do Select para o MYSQL https://www.google.com.br/search?source=hp&ei=MWVxXu_yLeK75OUPo_a0sAQ&q=select+tabela+mysql&o que=select+*+from+tabela+&gs_l=psy-ab.1.8.0j0i22i30j0i22i10i30j0i22i30l7.1078.14224..17964...2.0..0.164.2782.2j21......0....1..gws-wiz.......0i131j0i10j0i13.5gl3eYOjaHY abraço
×
×
  • Create New...