Ir para conteúdo
Fórum Script Brasil

K!ko

Membros
  • Total de itens

    106
  • Registro em

  • Última visita

Tudo que K!ko postou

  1. Bom dia senhores. Bom, estou desenvolvendo uma análise de viabilidade econômica num projeto aqui do meu trabalho. Esta análise fará uso de valores gerados a partir de uma simulação de financiamento FINAME que também será implantada no projeto. Este tipo de financiamento utiliza diversos indices financeiros para calculo de parcelas que são atualizados de tempos em tempos e possuem um certo prazo de validade. O que gostaria de saber é se existe algum WebService disponibilizado por algum orgão, ou até mesmo um portal, que trate do assunto, onde eu possa pegar os valores destes indices atualizados sempre que precisar. Se alguém souber de algo a respeito agradeço pela informação. Grato pela atenção.
  2. Snake... graças a você encontrei a solução. Passei a estudar as possibilidades de trabalhar com o valor retornado pelo cast de float. E encontrei uma solução. O cast me retorna 1,21000005037786E-6 sem dar erro... mediante a isto eu forcei uma mascara no display format do campo e.... vualá! Ele retornou exatamente oque tinha no banco, ou seja, 0,00000121. xD Sendo assim... Tópico Resolvido! muito obrigado pela ajuda Snake!! xD Grande Abraço.
  3. Então Snake. Eu testei dando cast para Float no sql... Ele não deu erro... no entando ele me retornou o valor convertido xD Retornou 1,21000005037786E-6 De qualquer forma creio que estamos no caminho certo.... Uma forma que testei e funcionou do meu caso foi dar o Cast para Varchar no meu SQL... Fiz vários testes de inserção, deleção e update... ele funcionou normalmente... Mesmo assim fico com receio em ficar convertendo valores Numéricos com tantas casas decimais para serem trabalhados como String. Mas como não encontrei outra solução até o momento vai assim mesmo.... muito obrigado por enquando Snake xD Abraço.
  4. Não entendi muito bem sua pergunta. O processo que eu faço é o seguinte: Eu monto o comando SQL e atribuo o mesmo pra propriedade CommandText do ClientDataSet que eu uso na tela. Depois eu Atribuo os parâmetros necessários no ClientDataSet e em seguida dou um Open() nele. No momento que eu dou o Open ele já retorna o Erro e só me traz os valores que não caem naquela situação da conversão. É isso que você queria saber? Exato, exato. Vai chegando fim de tarde, usuário ligando e daí já viu né... =D É, não sei no Delphi2006 como isso funciona, mas dar o erro direto no Open é estranho... Se tivesse que dar o erro, acredito que daria na hora em que você fosse jogar o valor para algum campo, variável, etc. Esse erro dá se você não fizer cast, se der cast pra varchar, vai na boa, é isso? Já tentou fazer o cast para float também? exato... Cast pra varchar funciona normal... Vou tentar dar o cast pra Float... Eu vou só confirmar mais uma coisa... depois que li seu ultimo post eu lembrei de uma outra coisa e pode ser isto que esteja ocasionando o erro... Eu possuo um componente desenvolvido aqui na empresa onde trabalho e ele faz a atribuição de mascaras para exibição dependenedo do tipo do campo atribuido ao mesmo... vou dar uma verificada nisto também e já posto o resultado. muito obrigado por enquanto.
  5. Não entendi muito bem sua pergunta. O processo que eu faço é o seguinte: Eu monto o comando SQL e atribuo o mesmo pra propriedade CommandText do ClientDataSet que eu uso na tela. Depois eu Atribuo os parâmetros necessários no ClientDataSet e em seguida dou um Open() nele. No momento que eu dou o Open ele já retorna o Erro e só me traz os valores que não caem naquela situação da conversão. É isso que você queria saber?
  6. Pode crer Snake. Realmente isto ocorre, ao dar um cast no valor convertendo-o para Varchar, por exemplo, e depois colá-lo no bloco de notas ele trouxe o valor correto. Bom... mais será que num tem alguma maneira de trazer este valor sem conversão? Por que quando eu salvei este valor na base de dados foi pela aplicação, ou seja, ele só converte quando eu tento resgatar este valor da base de dados. Mesmo assim, em virtude do que você apresentou a unica solução que vejo no momento é usar o Cast e exibir o valor do campo como String na minha aplicação. Pelo menos provisóriamente. De qualquer forma, muito obrigado pela ajuda até o momento. Abraço.
  7. Boa Tarde Bispo Snake. Então, na base de dados o campo é do tipo NUMERIC(16,13). Equivalente ao Numeric do MSSQL. Eu creio que esta conversão de tipos está ocorrendo no delphi. No entanto, eu faço a criação dos campos em tempo de execução aqui no delphi, e realmente crio ele como Float. O problema é que ele está convertendo também o valor do campo, ou seja, na base de dados o campo está com valor "0,00000121" e quando da o erro no delphi ele apresenta o campo com o valor "1,21E-6". Uma coisa que eu percebi também, não sei se tem alguma influência, eu peguei este valor na base de dados, selecionei e apertei ctrl+c e depois abri o bloco de notas e apertei ctrl+v. Ao invés de colar o valor 0,00000121... colou o valor 1,21E-6. Será que não é nenhuma config. do proprio windows que esta convertendo os valores? Grato desde já.
  8. Boa tarde senhores. Estou com o seguinte problema: Estou trabalhando com Firebird 2.5 e Delphi 2006. Possuo uma tabela em minha base de dados com um campo do tipo Numeric(16,13). Na minha aplicação eu cheguei a realizar a inserção do seguinte valor: 0,00000121. Salvou normalmente na base de dados e consigo enchergar este valor através de uma consulta SQL no IBExpert, por exemplo. No entando, quando executo uma consulta SQL para retornar este valor num ClientDataSet da minha aplicação, a mesma me retorna a seguinte mensagem de erro: "1,21E-6 is not a valid BCD value"; Eu realizei alguns testes e notei que esta "conversão" de valores ocorre a partir da 5ª casa decimal dos valores inseridos neste campo, ou seja, com o valor 0,0001 o erro não ocorre, já com o valor 0,00001 o erro passa a ocorrer pois este valor é convertido para "1E-5" e por algum motivo ele não é suportado no delphi. OBS.: A mensagem de erro mensionada anteriormente só aparace quando habilito a opção de visualização de excessões do Delphi na parte de opções da aba Tools. Mesmo aparecendo a mensagem de erro, minha aplicação consegue trazer todos os registros que possuem valores maiores ou iguais a 0,0001. Existe alguma maneira de retornar o valor que realmente está armazenado na base de dados, quero dizer, sem conversão? Espero ter sido claro quanto ao meu problema. Fico no aguardo de uma resposta.
  9. Bom dia senhores. Bom, estou com um probleminha com impressão duplex usando o quickreport em delphi 2006. Possuo um formulário pai com as configurações necessárias para gerar o relatório. Uma das opções existentes é de "Impressão Frente Verso", que nada mais é que um checkbox, que ao ser checado ativa a opção "Duplex" do quickreport. QuickRep1.PrinterSettings.Duplex := CBImprimeFrenteVerso.Checked; O problema é que a segunda parte a ser impressa sai de ponta cabeça. Como se fosse impresso em formulário continuo só que na mesma pagina. Preciso saber se existe como ele imprimir nos dois lados da folha na mesma orientação e como eu posso fazer isto. Grato desde já.
  10. Muito obrigado Jhonas. Irei pesquisar a partir dos links que você mencionou. Depois posto o resultado do projeto aqui no forum. abraço.
  11. Obrigado pela dica Jhonas, mas eu já havia pesquisado aqui no forum antes de postar e postei pois os tópicos relacionados a minha duvida não a sanavam. O que eu quero saber é se o que eu mencionei no tópico pode ser feito... só isso. A parte de como fazer eu tenho uma noção só quero saber se vai funcionar da maneira que descrevi, ou seja: um webservice Delphi conversando com clientes java, php, palm ou até msmo delphi. Através de XML(WSDL). Grato pela atenção. Abraço.
  12. Boa tarde Senhores. Eu pretendo desenvolver um projeto de aplicação distribuída com a finalidade de interagir diversas tecnologias de desenvolvimento de software tento como base um servidor de métodos Web Service em Delphi rodando sobre um Serviço IIS. Basicamente o projeto ficaria assim: No Servidor principal estaria implantado o banco de dados(PostgreSQL) e o servidor de métodos Delphi desempenhando o trabalho de um Web Service sobre um serviço IIS. A comunicação entre a aplicação cliente e o servidor de métodos Delphi se daria por meio de arquivos XML que realizariam o trabalho de encapsulamento dos métodos transmitidos no padrão WSDL. Cada aplicação ira traduzir o XML recebido para sua linguagem e executar o respectivo método. Exemplo: Servidor Principal (IIS) ( Banco <-----> WebService[servidor de métodos Delphi] ) <----(XML via Rede/Web)----> (Cliente [JAVA, Palm, PHP]). Na verdade eu gostaria de saber se o desenvolvimento neste conceito é possível e quais tecnologias seriam necessárias para realizar o projeto. Com base nas pesquisas voltadas para a parte do servidor de métodos em Delphi que realizei, cheguei a conclusão que usarei SOAP no contexto DataSnap para a comunicação do servidor com as aplicações cliente. Fico no aguardo.
  13. Boa tarde pessoal. Primeiramente eu quero deixar bem claro que sou extramamente principiante na parte de desenvolvimento para web. Qualquer ajuda é bem vinda, assim como críticas. Bom, vamos ao problema: Eu estou tentando desenvolver o MySpace da minha banda e, até o momento, só havia vizualizado o resultado no FireFox e estava tudo OK. No entando, quando eu fui ver como estava ficando no IE, o resultado não foi bem como o esperado. no IE aparece uma borda nas colunas onde estão as imagens do banner e dos integrantes da banda e isso ferra com o layout todo <_< Eu já pesquisei sobre os padrões das propriedades do IE, sobre hacks CSS, etc, etc. Mas não consegui resolver este problema. Alguém sabe o que pode ser? Grato desde já.
  14. K!ko

    erro ao conectar Firebird?

    Ola Dr. House. Aparentemente ele não está conseguindo abrir o banco especificado no caminho que você colocou. você já verificou se o banco realmente está la? Caso estiver, você verificou se você tem permissão para acessar o banco? você já verificou se não está faltando nada nos parâmetros usados para estabelecer a conexão com seu banco no código que você postou? Como por exemplo nome de usuário e senha para se conectar com o banco(sysdba, masterkey)? você tem certeza de que está usando o Driver correto para se conectar com o banco? No meu caso eu uso o driver "firebirdsql-full.jar" e o mesmo tem que ficar nos seguintes diretórios para funcionar: "C:\Arquivos de programas\Java\jdk1.6.0_10\jre\lib\ext" "C:\Arquivos de programas\Java\jre6\lib\ext" Eu postei o caminho só para você ter uma noção do que estou tentando dizer, pois eu trabalho em WindowsXP. Mesmo assim, quando você efetua a instalação do pacote de desenvolvimento(JDK) no Linux ele deve criar e configurar os diretórios usados pelo java e dentro destes diretórios você deve conseguir encontrar o caminho que mensionei. Não sei se servirá pra você, mas eu uso o seguinte código para estabelecer conexão com banco Firebird: import java.sql.Connection; import java.sql.DriverManager; /** * @author K!ko, Renan */ public class ConectorFire { public static Connection getConnection(String driver, String url, String user, String password) { try { Class.forName(driver); //carregar o dirver return DriverManager.getConnection(url, user, password); //conexão com o banco } catch (Exception ex) { ex.printStackTrace(); } return null; } public static Connection getTestConnection() //testa a conexão com o banco. { return getConnection("org.firebirdsql.jdbc.FBDriver","jdbc:firebirdsql:localhost/3050:C:/java/BasicColor/DB_BASIC_COLOR.FDB", "sysdba", "masterkey"); } } Espero ter ajudado.
  15. Olá Michelle. Que IDE você está usando para codificar? De que forma você grava dados no banco geralmente? Se baseando na forma que você grava dados no seu banco você pode criar um laço onde você andaria os itens do tal Grid e iria inserindo as informações na tabela do banco respeitando a estrutura do mesmo. Segue um exemplo de Mestre-Detalhe de um projeto simples desenvolvido em NetBeans e Firebird: private void gravar() { if(operacao.trim().equals("I")) { // Prepara as Variaveis e os componentes usados para gravar. Dividindo os mesmos para o cabeçalho e o item. Connection con_proc = ConectorFire.getTestConnection(); PreparedStatement stmt_proc = null; DefaultTableModel tabela = (DefaultTableModel)this.jT_Produtos.getModel(); stmt_cab = null; stmt_item = null; con_cab = ConectorFire.getTestConnection(); con_item = ConectorFire.getTestConnection(); comando_cab = "insert into bc_venda_cab values(?,?,?,?,?,?)"; comando_item = "insert into bc_venda_item values(?,?,?,?,?,?,?)"; try { // função usada para pegar os dados dos campos e jogar nas variaveis usadas para gravar pegar_dados(); // função usada para verificar se o código já existe no banco. if (verificaseexiste(vven_codigo) == false) { //grava o cabeçalho. stmt_cab = con_cab.prepareStatement(comando_cab); // stmt_cab.setInt(1,vven_codigo); stmt_cab.setInt(2,vven_clcodigo); stmt_cab.setInt(3,vven_vencodigo); stmt_cab.setDate(4, new java.sql.Date(format.parse(jTF_Data.getText()).getTime())); stmt_cab.setDouble(5, vven_total); stmt_cab.setString(6, null); stmt_cab.executeUpdate(); //grava os itens. for (int i = 0; i<tabela.getRowCount();i++) { stmt_item = con_item.prepareStatement(comando_item); stmt_item.setInt(1, (i+1)); stmt_item.setInt(2, Integer.parseInt(jTF_CabCodigo.getText())); stmt_item.setInt(3, Integer.parseInt(tabela.getValueAt(i, 0).toString())); stmt_item.setFloat(5, Float.parseFloat(tabela.getValueAt(i, 2).toString())); stmt_item.setString(4, "ABC"); stmt_item.setDouble(6, Double.parseDouble(tabela.getValueAt(i, 3).toString())); stmt_item.setDouble(7, Double.parseDouble(tabela.getValueAt(i, 4).toString())); stmt_item.executeUpdate(); //atualiza saldo dos produtos via storedProcedure. stmt_proc = con_proc.prepareStatement("EXECUTE PROCEDURE PROC_ATUALIZA_SALDO_PR(?,?)"); stmt_proc.setInt(1, Integer.parseInt(tabela.getValueAt(i, 0).toString())); stmt_proc.setFloat(2, Integer.parseInt(tabela.getValueAt(i, 2).toString())); stmt_proc.execute(); } //fecha as conexões. con_cab.close(); con_item.close(); bloqueio(true); JOptionPane.showMessageDialog(rootPane, "Status: Registro gravado com sucesso!!!"); } else { JOptionPane.showMessageDialog(rootPane, "Status: Registro já existente! Verifique!"); con_cab.close(); } } catch (Exception ex) { ex.printStackTrace(); } } Na situação acima temos uma tela de venda onde gravamos dados em duas tabelas no banco de dados, ou seja, na tabela de cabeçalho e na tabela dos itens da venda. No caso dos itens eu uso um componente jTable para inserir os dados da mesma forma que você faz(usando jTexts para digitar os dados e jButtons para inserir na jTable) e para gravar estes itens eu uso um laço(for) onde percorro toda a jTable e insiro os dados no Banco. Espero ter ajudado.
  16. Bom Dia a todos! Eu comecei a estudar J2ME por conta própria a alguns dias... pelo conhecimento que já possuia em java consegui fazer uma simples aplicação que se resume em uma agenda. Eu possuo um Form com um componente TableItem. Eu já consegui gravar dados via RMS e já consegui fazer com que o sistema busque os dados da RMS e os insira na TableItem. No entanto eu tive a necessidade de pré-definir a quantidade de linhas e columas do componente num SimpleTableModel me limitando a uma certa quantia de registros. O que eu gostaria de saber é se existe alguma maneira de criar linhas e colunas em um SimpleTableModel em tempo de execução. Mais precisamente no momento em que estou listando os dados da RMS e inserindo na TableItem. segue o código usado até o momento: try { RecordStore rs = RecordStore.openRecordStore("cad", true); RecordEnumeration e = rs.enumerateRecords(nameFilter, orderby, false); for (int i = 0; i<e.numRecords();i++) { //pega o codigo do registro. int cadid = e.nextRecordId(); // pega o primeiro nome inserido no registro e o atribui na // fariavel firstname. byte[] dados = rs.getRecord(cadid); String s = new String(dados); int idx = s.indexOf("|"); firstName = s.substring(0, idx); //insere o registro na tabela localizada na tela Contatos. tableItem.setModel(tableModel); tableModel.setValue(0,i,String.valueOf(cadid)); tableModel.setValue(1, i, firstName); } rs.closeRecordStore(); } catch (RecordStoreException x) { x.printStackTrace(); } Aproveitando o Tópico... Como eu estou começando a estudar esta técnologia, obviamente eu estive em busca de material de qualidade sobre o assunto. No entanto eu não consegui encontrar uma apostila ou um tutorial com essa características. O máximo que encontrei foram tópicos em Fóruns e Blogs de assuntos variados dentro de J2ME mas não um que tratasse de suas propriedades como um todo. Se alguém possuir algum material sobre J2ME e puder me passar ficarei muito grato. Não sei se expliquei bem minha necessidade mas é isso aew! Obrigado pela atenção.
  17. Pode crer Jhonas. Isto resolveu o problema parcialmente. O problema é que eu não estava usando índece algum. Ou se estava o mesmo foi gerado pela aplicação que usei para criar o banco (Database Desktop). Eu havia descartado esta possibilidade pelo fato de meu cliente já estar usando esta tela a bastante tempo e, além disto, no mesmo dia ele havia feito lançamentos nela. Mas antes disto eu havia feito outro método: A minha query estava com o RequestLive setado para false. Impossibilitando que eu fizesse transções a partir dela. Eu fiz um esquema para trabalhar com esta propriedade quando fosse necessário e funfo beleza. Obrigado pela atenção.
  18. Olá senhores. Bom, o meu problema é o seguinte: Meu cliente me notificou a respeito de um erro que ocorreu repentinamente em determinada tela. Ele relatou que o erro ocorreu de forma muito estranha, pois o mesmo já havia usado a mesma rotina naquele dia e nada havia acontecido. Pois bem, o erro ocorrido relata uma mensagem: "Table is not indexed"; isto ocorre ao passar um comando sql para determinada tabela em meu fonte. O código é este: qryaux.SQL.clear; qryaux.SQL.add( 'Select * from rc ' + ' Where clcodi = ''' +variavel+ ''''+ ' and rcesto is null and rcdtpg is null and (rcrece is null or rcrece <> '''+'SIM'+''')'); qryaux.open; Aparentemente os índeces dessa tabela foram perdidos. :blink: Estou desenvolvendo em Delphi 5 e BDE Grato desde já
  19. K!ko

    Conexão Remota

    Bastante interessante, mas pra ser usado posteriormente. Bom... a VPN acaba se tornando um problema, pois queria saber se existe alguma forma de fazer isso sem haver custos com esse tipo de serviço. Mesmo sabendo da segurança que é necessária nesse tipo de transação e que a VPN me "garantiria" isto eu preciso de algo sem custos pra usar como exemplo para mostrar para os clientes, e posteriormente ressaltar os benefícios que uma VPN traria. No momento preciso de uma solução mais prática... teria alguma? Aguardo resposta.
  20. Boa tarde Senhores! Bom eu possuo uma aplicação desenvolvida em delphi 5 com banco de dados firebird. Eu conecto a aplicação com o banco através de um arquivo path, onde, localmente ou numa rede, é posto o caminho do banco. Por exemplo: (IP do micro):C:\BancoDados\BANCO.FDB ou (Nome do micro):C:\BancoDados\BANCO.FDB minha necessidade é conectar me a base de dados de uma matriz usando o sistema da filial que se encontra em outra cidade através da internet. Eu cheguei a pesquisar em como fazer algo do tipo usando linux, onde eu liberaria a porta do firebird através de iptables para que o mesmo receba a conexão remota de um ip na internet. o path pra isso ficaria assim: (IP do microna internet):C:\BancoDados\BANCO.FDB Alguém poderia me informar se existe uma maneira mais prática e melhor pra se fazer isso, ou se essa maneira que comentei acima está correta? Grato desde já.
  21. Eu cheguei a estudar o WinExec... Só que não consigo passar pra ele o caminho do discador que é criado em "Conexões de Rede" do Windows. Nem do atalho deste discador que está no descktop. Alguém pode me ajudar? Como ficaria o caminho para o .exe do discador criado em "Conexões de Rede" do Windows. Grato desde já
  22. Vlws brow.. vo da uma estudada... Grato.
  23. Humm... interessante... Por acaso você teria algum tuto ou algum link pra eu começar a estudar? grato desde já.
  24. Boa tarde Senhores. Seguinte... Eu gostaria de saber se é possível usar o delphi para gerenciar aplicativos como, por exemplo, um discador de internet do speedy. Sendo que a aplicação Delphi faria, através de um looping por exemplo, o discador se conectar, desconectar e se conectar novamente. E, além disso, como faria para que esta mesma aplicação acessasse a internet via browser como internet explorer ou firefox e fizesse uma determinada ação como clicar em um link, por exemplo. Basicamente a aplicação faria o seguinte: Se conecta à internet > abre a página via browser > executa a ação no site > fecha o browser > desconecta a internet. Isso num looping fazendo com que o processo se repita várias vezes. Grato desde já.
×
×
  • Criar Novo...