Ir para conteúdo

Chrnos

Members
  • Total de itens

    1546
  • Registro em

  • Última visita

  • Dias vencidos

    4

Tudo que Chrnos postou

  1. Chrnos

    Boteco iMasters

    #acorda com os pés sobre a cadeira# Vish, aqui ainda tá devagar.... manda mais tequila pra cá!! Mas é fato... o fórum anda bem mais devagar do que era a uns anos atrás de certo modo... não sei se é só impressão minha isso.
  2. Chrnos

    Mudar cor de palavras enquanto digita texto

    Até onde eu sei, o memo não permite mudar a cor de apenas algumas palavras... ou se muda todas pra uma cor ou nenhuma (a menos que tenha mudado isso nas versões recentes do Delphi, não tive a chance de testá-lo ainda). Geralmente o indicado nestas situações é o Richedit.... este link pode ajudar: http://www.scriptbrasil.com.br/forum/topic/97885-richedit-linhas-coloridas/
  3. Chrnos

    Boteco iMasters

    Pois é.... por isso estou terminando com o estoque de tequila primeiro.... desperdiçar jamais!!! Nem fale... eu estou revoltado por darem mais 4 anos a essa anta... mas o que fazer? Só resta beber mesmo..
  4. Chrnos

    Pesquisa dbgrid com union all

    Campos de datas só aceitam locate informando uma data válida... pelo que vi no seu filtro você está passando um texto com um '*' ... não seria ai o problema?
  5. Chrnos

    delphi

    E qual é a dúvida mesmo?
  6. Chrnos

    desenvolvimento ios atraves do delphi

    Fiz uma pesquisa rápida aqui na net e encontrei o link abaixo que pode ajudar... http://stackoverflow.com/questions/22316062/ios-simulator-using-xe5-wrapper-init-failed-error
  7. O nosso mal é sair programando sem pensar no melhor meio pra isso rs.... mas se funcionou e entendeu o conceito que usei, então está ótimo rs... qualquer coisa estamos ai pra ajudar. :coolio:
  8. Chrnos

    Boteco iMasters

    Pois é Beraldo, isso aqui ficou jogado as traças mesmo... o povo fica milionário e esquece dos amigos, lamentável... :closedeyes: Se é pra beber já pega outra garrafa e deixa na mesa.... e façamos um brinde as coisas boas da vida hehehe :skull:
  9. Chrnos

    Imprimir ultimo registro

    Cara, que código confuso o seu... qrduplicata é um TQuery ou uma TTable? Se for uma tabela, seu padrão de nomenclatura está errado, pois lendo o que postou achei que fosse uma TQuery da vida... mas vamos lá... assumindo que seja uma TTable, de nada adianta dar um qrduplicata.last se sua tabela não tiver sido aberta primeiro para posicionar no último registro... deveria dar um open e depois o last para posicionar no último registro neste caso... segundo, pra que está dando um open, depois um edit seguido de um insert? Há uma confusão aqui nos seus comandos... Partindo do princípio que está usando uma TTable da vida, o query.open deve ser usado para abrir a tabela, o query.edit só deve ser usado quando quiser editar os dados no registro atualmente posicionado e o query.insert para inserir um novo registro. Não se usa os 3 ao mesmo tempo como postou aqui, não faz sentido :pinch: Agora, considerando que você esteja inserindo um registro e depois queira já imprimir o mesmo na sequência, o fluxo das operações seria: 1. Efetuar o insert dos dados na tabela 2. Comitar a gravação dos dados na tabela 3. Posicionar sua tabela no registro que quer imprimir (eu particularmente acho que seria melhor usar uma query aqui, afinal, tem a chave do registro nas variáveis, seria só dar um select simples e posicionar no registro desejado). Considerando que está usando table, use o comando locate para posicionar no registro desejado (veja este link de exemplo: http://forum.imasters.com.br/topic/323195-resolvidobusca-com-ttable-com-comando-locate/) 4. Após localizar o registro, ai sim exibir o relatório.
  10. Chrnos

    Boteco iMasters

    Ou ganharam na loteria e não querem contar aos amigos kkkkkkk Uma alma penada regressa a esse antro de perdição então? Uhuahuahuhauhauaha, seja bem vindo de volta assombração :p Se estão todos vivos eu não sei, acho que devem ter fugido com medo do ebola kkkkkk ... quanto a mim, sigo aqui bebendo minha tequila na boa com as garçonetes só pra mim \o/
  11. Colega, seu código ficou um tanto confuso e ficou difícil identificar os componentes que usou.... de todo modo, não precisa usar tantos for para fazer o que quer, 1 só já é o suficiente... vou postar aqui um exemplo que faz a mesma coisa usando um checklistbox e um memo para exibir os dados formatados em sql quando clicar no botão. No checklistbox eu adicionei direto os itens como no exemplo que passou (campo1 ... campo15). unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CheckLst; type TForm1 = class(TForm) cxSQL: TMemo; Button1: TButton; clbCampos: TCheckListBox; LbTabela: TLabel; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); Var iAux, iQtdePalavras : Integer; pCampos : String; begin pCampos := EmptyStr; iQtdePalavras := 0; cxSQL.Lines.Clear; For iAux :=0 To clbCampos.Items.Count - 1 Do Begin If clbCampos.Checked[iAux] = True Then begin inc(iQtdePalavras); //Pegou o primeiro item da linha, logo não precisa jogar a ',' ainda if (Trim(pCampos) = EmptyStr) then pCampos := 'SELECT TOP 1000 ' + clbCampos.Items.Strings[iAux] else begin //Verifica se já chegou no limite de 7 palavras para decidir o próximo passo if (iQtdePalavras) > 7 then begin //Insere no memo cxSQL.Lines.Add(pCampos + ', '); //recomeça a inserção dos campos na variável auxiliar pCampos := clbCampos.Items.Strings[iAux]; //Reinicia o contador de palavras, agora com 1 para manter o padrão //de quebrar a cada 7 palavras iQtdePalavras := 1; end else //Se não chegou a 7 palavras, apenas acrescenta a ',' e acumula pCampos := pCampos + ', ' + clbCampos.Items.Strings[iAux]; end; end; end; //Insere os últimos itens selecionados no checklistbox cxSQL.Lines.Add(pCampos); cxSQL.Lines.Add('FROM ' + LbTabela.Caption + ' (NOLOCK)'); // BtnConfirmar.Enabled:=True; end; end. Rodando o teste, obtive o resultado abaixo no memo, selecionando os 15 itens. SELECT TOP 1000 Campo1, Campo2, Campo3, Campo4, Campo5, Campo6, Campo7, Campo8, Campo9, Campo10, Campo11, Campo12, Campo13, Campo14, Campo15 FROM TabTeste (NOLOCK)
  12. Chrnos

    ERRO: Dataset not in edit or insert mode

    Amigo, da próxima vez por favor, coloque seu código identado entre as tags {code} {/code} (troque as "{}" por "[]") para facilitar a nossa leitura, tive que copiar seu código e identar para tentar entendê-lo melhor aqui pela forma que posta <_< .... Agora, vamos lá... primeira pergunta: os campos que cita são da mesma tabela que está editando? Ou são de outra tabela? Eu vejo um problema grave no seu código do botão gravar aqui... veja que, ao alterar os dados, você passa o seguinte comando para por sua tabela em edição: dm_dadosSeduc.tbl_escolaOrgao.Edit; Isto é, neste momento, você diz ao programa que a tabela está em modo de edição... logo, quando mandar gravar, você irá entrar neste if com sucesso para editar os dados.... if dm_dadosSeduc.tbl_escolaOrgao.State in [dsEdit] then Em outras palavras, ao clicar em alterar você coloca corretamente a tabela em modo de edição e ao gravar não ocorrem erros porque seu programa entra no local esperado corretamente. Contudo, o seu erro aqui é ter um else na gravação que executa sem validar se o status da tabela está em modo de edição ou de inserção, como mostrado na mensagem de erro que postou (tbl_escolaOrgao: Dataset not in edit or insert mode). Veja que no seu else do botão de gravação você apenas testa se os campos estão preenchidos, mas não se a tabela está em modo de inserção ou edição. Debugando o código, você já verificou o ponto onde ocorre o erro? Se não é por cair neste else e dar o post direto sem testar o status da tabela que está gerando o erro?
  13. Chrnos

    Erro ao acessar Oracle com Cliente 11g

    Não é problema de conflito de driver odbc por causa da versão do Oracle instalada? Talvez esteja faltando o cliente do oracle de 32 bits ser instalado na máquina... dê mais detalhes sobre o erro, o erro ocorre nas máquinas cliente ou na de desenvolvimento? O programa foi recompilado com a versão do driver odbc correspondente a do BD?
  14. Chrnos

    utilizando adoquery delphi XE3

    Ai que está a questão do porque perguntei quantos registros trás a sua pesquisa.... se você jogar a sql que usa no BD e executar, e ela só retornar um registro, não há como navegar para o próximo ou anterior porque não há mais registros a serem exibidos, entende? Para navegar entre registros, obrigatoriamente, temos que ter mais de um registro a exibir... outra coisa... se vai navegar entre eles, terá que por no seu código também, além do comando para mover para o próximo ou o anterior, o de atribuição ao label. Outra coisa... não se usa o next do recordset do Adoquery para o que quer fazer... precisa rever duas coisas: 1. Se o seu select está trazendo múltiplos registros. Se estiver trazendo apenas 1, não adianta ter botões para pegar o próximo ou o anterior. 2. Adequar o código dos botões para algo do tipo abaixo. //pegar o próximo registro with ADOQuery do begin if not Eof then begin Next; exibelivro.Caption:=fieldByName('ver_livro').AsString; end; end; //pegar o registro anterior with ADOQuery do begin if not First then begin Prior; exibelivro.Caption:=fieldByName('ver_livro').AsString; end; end; Dê uma lida neste link, pode ajudar: http://www.subrotina.com.br/conhecendo-o-componente-query/
  15. Chrnos

    utilizando adoquery delphi XE3

    Como está o seu código nos botões? Pode postar para darmos uma analisada? Outra dúvida: sua pesquisa está retornando mais de um registro e está ainda ativa quando clica nos botões?
  16. Chrnos

    Consulta ultilizando SQLQuery e ClienteDataSet

    E qual o problema com o código? Está gerando um erro? Dê mais detalhes do problema, aparentemente não é erro de código.
  17. Chrnos

    Boteco iMasters

    Antes meus problemas se resumissem ao excesso de livros pra ler rsrsrs.... mas dá nada, vamos a bebida que tudo se resolve no meio da bebedeira muhauhauhauhaahuaaha Manda outra garrafa de tequila pra cá :p
  18. Chrnos

    Desserializar Array Json

    Talves este link possa ajudar: http://edn.embarcadero.com/article/40882 Ps.: não testei, pois não costumo usar isso no dia a dia.
  19. Chrnos

    Data por extenso

    Dê uma lida neste link: http://www.devmedia.com.br/data-por-extenso/22090
  20. Chrnos

    Firebird não aparece no Data Explorer do Delphi XE6

    Você tem o driver odbc instalado na máquina para acessar o firebird via dbexpress? Não usei ainda o delphi XE6, mas em versões antigas o delphi não trazia um driver nativo para acessar o firebird, tinha que instalar ele durante a instação do firebird para habilitar que eu lembre.... faz muito tempo que não uso este BD.
  21. Chrnos

    porque meu simpledataset grava em cima do meu registro anterior?

    Você debugou o valor retornado pelo DataModule1.sdslanches.FieldByName('ID').AsInteger; que usa para atribuir o valor ao id_lanche se está correto?
  22. Chrnos

    porque meu simpledataset grava em cima do meu registro anterior?

    Acredito que o erro seja aqui neste ponto: id:= SQLQuery_item_lanche.FieldByName('MAX_ID').AsInteger; Qual o valor que retorna aqui? O maior id ou o maior id+1? O problema não é one comita a operação, mas onde pega o id provavelmente... já debugou o código para ver isso?
  23. Chrnos

    Boteco iMasters

    Povilho? É, eu não devia ter te deixado tomar tequila mesmo kkkkkkk E respondendo sua pergunta.... no caos total kkkkkkk
  24. Chrnos

    Boteco iMasters

    Realmente isso aqui ficou abandonado de repente... *tomando uma tequila*
  25. Chrnos

    Po--- e LeftStr

    Primeira pergunta... você declarou na sua lista de uses a StrUtils? É ela que permite a você usar os comandos citados, sem declará-la você tem que programar as funções na mão (e ai você declarar elas sem implementar no seu código não fará diferença realmente). Basicamente, você teria que fazer o seguinte: uses StrUtils; ... procedure TForm_Vinis.TreeView_Faixas_VinilDblClick(Sender: TObject); var NovaString, suaString : string; begin suaString := TreeView_Faixas_Vinil.Selected.Text; //Fiz uma alteração no seu if, visto que quando entrava no primeiro bloco você atribuia //o valor a variável NovaString mas não o jogava no seu Label. If Pos(' - ', suaString) > 0 then NovaString := LeftStr(suaString, Pos(' - ', suaString) - 1) else NovaString := suaString; //Agora o seu label irá receber um valor independente de ter entrado no if ou no else! Label11.Caption := NovaString; end;
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.