Ir para conteúdo
Fórum Script Brasil

arce

Membros
  • Total de itens

    45
  • Registro em

  • Última visita

Tudo que arce postou

  1. Olá Tenho uma classe principal chamada TTabela. Através de herança crio outras classes filhas, que neste exemplo vou chamar de TUsuario. Criei uma tela de pesquisa base que receberá as configurações de acordo com as informações da Classe referente. Gostaria de saber se é possível declarar uma variável private do tipo TTabela, e sobrepor o conteúdo com a classe filha (TUsuario), uma vez que preciso criar a classe em tempo de execução para uso dos métodos internos do form. unit untPsqBase; interface uses (...); type TfrmSPsqBase = class(TfrmBase) cbbFiltro: TComboBox; lbl1: TLabel; edtSearch: TEdit; lbl2: TLabel; private FTabela: TTabela; public constructor Create(AOwner: TComponent; cClass: String); overload; end; var frmPsqBase: TfrmPsqBase; implementation {$R *.dfm} uses uDM; constructor TfrmSearchEntity.Create(AOwner: TComponent; cClass: String); begin inherited Create(AOwner); FTabela := TTabela(GetClass(cClass)); // cClass = 'TUsuario' end; end. Consigo fazer a instância com TForms como pode ser visto no exemplo abaixo: procedure TfrmBase.btnPesqClick(Sender: TObject); var oClasseForm: TFormClass; cClasseForm: String; begin inherited; cClasseForm := 'TfrmPsq'+scTabela; oClasseForm := TFormClass(GetClass(cClasseForm)); if(Assigned(oClasseForm))then begin giCodigoPesquisado := 0; with(oClasseForm.Create(Self))do begin ShowModal; free; end; end; end;
  2. Jhonas, entrei em contato com o José Araujo do FortesReport, e ele passou duas soluções. 1ª. No finally substituir o código existente por: RLFilters.SelectedFilter := nil;, desta forma limpa o último filtro selecionado. 2ª. Destruir a instância do FiltroMatricial (comigo, o erro acontecia, pois tenho uma instância do DraftFilter em um form comum)
  3. Boa tarde Migrei recentemente para o Fortes Report CE, e estou com um problema relacionado aos filtros padrão e matricial. Meu código era desta forma, se o usuário escolhe a opção 1, e depois escolher a opção 3, e novamente a 2, o FortesReport atribuirá o filtro correto de acordo com a opção escolhida. Lembrando que quando o RLPrinDialogtSetup1.Filter recebe NIL, este interpreta como filtro padrão de impressão, limpando a referencia da Matricial. RLPrinDialogtSetup1.Filter := nil; try case(iOpImp)of 1: begin RLReport.Prepare; RLReport.PreviewModal(); end; 2: begin RLReport.Prepare; RLReport.Print; end; 3: begin RLReportMatrcial.Prepare; RLReportMatrcial.DefaultFilter := RLDraftFilter1; RLReportMatrcial.Print; end; end; finally RLPrinDialogtSetup1.Filter := nil; end; Após a atualização o componente RLPrinDialogtSetup1 deixou de existir, logo não consigo limpar o filtro. O problema é que após utilizar o filtro matricial, todas as demais impressões realizadas posteriormente terão este filtro atribuido Minha dúvida é como atribuir o default de impressão no fortesreport-ce?
  4. Bom dia Recentemente um de meus clientes trocou a placa da balança Jundiaí, e também tive que alterar a leitura do retorno. Resolvi criando parâmetros de leitura (caracter inicial. final e qtd de caracteres para leitura), de forma que agora consigo configurar em qualquer outra balança rodoviária. No método ACBrBAL1LePeso(Peso: Double; Resposta: String); a variável "Resposta" retorna o conteúdo da porta, cada modelo de balança retorna de forma diferente. Ex01: "# 00025685$# 00025685$# 00025686$" Ex02: " 00025685 00025685 00025686" No evento LePeso, associei o meu método, que seria chamado no Ex01 assim, LerPesoBalanca(Resposta, '#', '$', 11) e no Ex02 LerPesoBalanca(Resposta, '', '', 11) Algumas balanças retornam a resposta em Hexadecimal, nesses casos é necessário converter para ASCII.
  5. ****** Registro trava ao dar UPDATE ou DELETE ****** Boa tarde. Tenho uma tabela chamada LOG que armazeno todos os logins do meu sistema. O problema é que um registro específico está travado, não consigo fazer UPDATE nele, e também não consigo DELETAR. Já tentei fazer um backup restore também e o processo trava na tabela LOG. Seria uma opção fazer extract metadata das tabelas exceto da "LOG", porém estou tentando não perder as informações desta. Alguém tem alguma dica? Obrigado!
  6. As configurações estão exatamente iguais, nas abas que você mencionou... não estou entendendo porque um projeto compila diferente do outro
  7. Bom dia Estou com o seguinte problema. Tenho dois projetos que compartilham boa parte das units. No processo de inicialização dos forms no dpr, cada projeto se comporta de uma forma. {$R *.res} begin Application.Initialize; Application.CreateForm(TdmPrincipal, dmPrincipal); Application.CreateForm(TfrmPrincipal, frmPrincipal); Application.CreateForm(TformBaseDados, formBaseDados); Application.CreateForm(TfrmLogin, frmLogin); Application.Run; end. No 1º projeto (q está da forma correta), ao inicializar; todos os forms listados são criados de uma só vez, e após a criação do frmLogin (último) que o sistema executa o TFormCreate do frmPrincipal (primeiro). No 2º Projeto que dispõe das mesmas units para inicialização, os forms são criados um de cada vez, sendo que no momento de criar o frmPrincipal, executa-se o TFormCreate e TFormShow do mesmo, ou seja, após criar cada form o projeto executa seus comandos inciais. Comparei diversas propriedades entre os projetos, e não encontrei nada que faça com que o projeto seja compilado de maneira diferente.
  8. Em minha empresa desenvolvemos usando Firebird e delphi 7, e vou iniciar um novo sistema, para tal quero usar o clienteDataSet para realizar as transações. Alguém teria algum fonte simples exemplificando o uso do componente? obrigado
  9. arce

    Gerenciamento de Units

    Jhonas Eu instalei e testei localmente o Visual SourceSafe na minha máquina e funcionou perfeitamente. Acontece, que preciso colocar os fontes na nuvem. Instalei corretamente no servidor do cloud (server 2003), o problema é q não estou conseguindo conectar a máquina local com a base de dados do VSS(cloud). no Share Location ... eu especifico o caminho EX: \\XSDJJJJ:C:\FONTES Mas ao tentar a conexão aparece a seguinte mensagem de erro: "\\XSDJJJJ:C:\FONTES does not contain a valid SourceSafe database(srcsafe.ini)" e no diretório, o arquivo "srcsafe.ini" exite. Aguardo resposta.
  10. Bom dia, trabalho em uma pequena empresa de desenvolvimento de Software, e como crescemos a cada semestre aumentamos o numero de colaboradores. Agora esta ficando complicado o gerenciamento do código fonte. Estou pesquisando sobre ferramentas específicas para sanar este problema, já q apesar dos nossos cuidados, esta havendo sobreposição de código. Utilizo Delphi 7, e nas minhas pesquisas soube do StarTeam (próprio da Borland) e do Visual SourceSafe 6.0. Mas ambos procurei para download sem sucesso, o ultimo até encontrei disponível mas está dando erro ao instalar. aguem tem alguma sugestão de outras ferramentas de gerenciamento de software? Ou alguma ajuda para encontrar os programas acima citados? Obrigado.
  11. Olá, Estou com o seguinte problema, uma tabela da minha base de dados corrompeu. Consegui criar um script com os dados, mas preciso deletar a tabela para depois cria-la e inserir os dados novamente. Mas aparece a seguinte mensagem de erro Unsuccessful execution caused by a system error that precludes successful execution of subsequent statements. database file appears corrupt (). bad checksum. checksum error on database page 15565. tentei dropar por script e clicando na table tambem... mas não deu certo. alguém poderia me ajudar
  12. OK.. resolvido usei a formula que postei neste post (que você mesmo respondeu) http://scriptbrasil.com.br/forum/index.php...mp;#entry612385 e apliquei na variável Resposta (string que vem da porta serial) do componente, tratei esta string e extrai o peso no formato correto. obrigado
  13. Tenho um pequeno script em clipper e quero passa-lo para o Delphi peso := val(substr(m->str_,at(" ",m->str_),11)) Converti da seguinte forma peso := StrToFloat(Copy(m = str_, pos(' ',m = str_),11)); mas dá erro ao compilar. alguém pode traduzir este código corretamente para mim? Obrigado
  14. A questão não é a formatação, porque fiz o seguinte teste ... ... assim me mostraria se o valor da variável Peso era superior a 999kg, o que não ocorreu. Eu também tentei sem o formatFloat lblBalanca.Caption := FloatToStr( Peso ); e o valor resultante fica sempre inferior a 999kg
  15. Olá! Estou desenvolvendo um sistema de controle de pesagem de uma balança rodoviária Jundiaí. Utilizei o ACBrBal e com os exemplos que vem com o componente implementei no meu sistema. Consegui capturar os pesos em tempo real. O problema é que está capiturando apenas valores até 999 kg, o que é insuficiente para o meu caso. No evento OnLePeso do componente Fiz uns testes para checar o valor da variável Peso, e ela não está trazendo valores acima de 999kg. Tirei o formatFloat mas também não deu certo. Nas propriedades usei a seguinte configuração: Parity = pEven Modelo = balFilizola Porta = COM2 O resto deixei por default. Acho que o problema está na configuração do componente.
  16. funcionou perfeitamente ... muito obrigado Jhonas
  17. Olá, estou com o seguinte problema ... tenho uma impressora Bematech MP-4000 TH (não fiscal - porta USB). Desenvolvi um cupom de venda no Fortes Report com as dimensões da bobina da impressora. A questão é q a impressão está saindo parcial, está saindo apenas a parte esquerda do texto. _________________________________ | Cupom de V | | Cliente: Jose A | | ________________ | | | | itens do ped | |_______________________________| Quando mando este mesmo cupom em uma impressora Epson LX-300+II (usando o filtro matricial do fortes) não tem nenhum problema. Usei as opções mostradas neste tópico do forum http://scriptbrasil.com.br/forum/index.php...amp;hl=bematech mas não deu certo. alguém tem alguma sugestão?
  18. Seria essa a idéia ... encontrei essa imagem em um outro forum, onde encontrei o mesmo problema. Mas assim como aki ainda não foi resolvido
  19. guilherme coloque qualquer um dos códigos citados pelo Douglas_Soares acima, no evento onClick e onDropDown do DBLookupComboBox abraço
  20. olá, Tenho uma tela de pesquisa (parcelas de contas à pagar) , nela utilizo clienteDataSet e checkbox na grid, para que o usuário possa selecionar aleatóriamente os registros. Depois ao clicar em um botão, abre uma outra tela, para que possa ser dado a baixa nessas parcelas. Para tal, é necessário carregar apenas os dados selecionados na primeira grid. Usei um RxMemoryData para transferir os dados para a segunda grid. while not cdsPesquisa.Eof do begin if cdsPesquisa.FieldByName('CHECKED').AsString = 'T' then begin // transfere os dados do clientDataSet para o MemoryData frm_contas_pagar_lote.mmParcelas.Insert; frm_contas_pagar_lote.mmParcelasFOR_CODIGO.AsInteger := cdsPesquisaFOR_CODIGO.AsInteger; frm_contas_pagar_lote.mmParcelasCP_CODIGO.AsInteger := cdsPesquisaCP_CODIGO.AsInteger; frm_contas_pagar_lote.mmParcelasFOR_NOME.AsString := cdsPesquisaFOR_NOME.AsString; frm_contas_pagar_lote.mmParcelasCMP_CODIGO.AsString := cdsPesquisaCMP_CODIGO.AsString; end; cdsPesquisa.Next; end; Até aí funciona normalmente, a questão é que quando vou modificar os dados das parcelas que estão no MemoryData. Faço os updates e os deletes corretos no banco de dados, mas ao atualizar da grid (que esta ligada ao MemoryData) os dados não aparecem corretamente. Se alguma parte estiver confusa me avise, que explico melhor. Obrigado
  21. Douglas_Soares eu já mudei a propriedade color do componente mas é por causa da skin mesmo não vou poder alterar a skin, porque todo o sistema esta adaptado a ela e este problema está ocorrendo em apenas um form obrigado
  22. olá estou utilizando o delphi 7, com vclskin 4.8 e por causa da skin a cor dos groupBox ou panel não altera. Preciso de um desses componentes pois usarei dois agrupamentos de radiobuttons. obrigado
×
×
  • Criar Novo...