Página 1 de 1
Fazer consulta de campo para usar no relatório
Enviado: Julho 8th, 2012, 5:42 pm
por Romero
Oi galera, sou novo no pedaço e preciso de ajuda,
Preciso pesquisar um campo Alfanumerico (CodigoProcesso) em uma tabela, e chamar aquela tela de pesquisa, e conforme a pesquisa retornar o valor e chamar o relatório. usando os Xnumedit ou xedit.
A dúvida é que eu sei fazer isso com o campo numerico, como chave estrangeira, mas não sei fazer com o campo sendo texto e
sem ser chave estrangeira. Não sei usar as consultas/pesquisas do xmaker. Alguem me ajuda ae....
Quando tento usar a mesma forma do com chave estrangeira dá um erro. não to conseguindo..?? urgente..
Re: Fazer consulta de campo para usar no relatório
Enviado: Julho 27th, 2012, 11:12 am
por Dimmy Angelo
Da uma olhada nesse exemplo:
begin
{codificação...}
FormGridPesquisa := TFormGridPesquisa.Create(Application);
Try
FormGridPesquisa.Atalho := VK_F8;
FormGridPesquisa.Campo := TabGlobal.DROTEIRO_MOV.PLACA;
FormGridPesquisa.Avulso := True;
if FormGridPesquisa.ShowModal = mrOk then
XEdit1.Text := FormGridPesquisa.Resultado;
Finally
FormGridPesquisa.Free;
end;
end;
Re: Fazer consulta de campo para usar no relatório
Enviado: Julho 30th, 2012, 3:55 pm
por Romero
Bom acabei descobrindo a duras penas que para essa tela de consulta aparecer é preciso haver um relacionamento com
as tabelas . Por exemplo. Eu quero pesquisar o codigo ou nome do cliente na tabela clientes para retornar os valores
para os campos como xnumedit ou edit, e assim chamar o relatório. Acontece que eu não posso chamar a pesquisa direto na tabela Clientes pois dá um erro, o que que eu fiz. Chamei a pesquisa por uma outra tabela que está relacionada com a de clientes por exemplo. A tabela de serviço, que possui o campo codcli relacionado na da clientes.. Assim funciona.
Pelo menos comigo só funciona assim..Rss.. Não sei se tem outro jeito. Mas valeu a ajuda...
Re: Fazer consulta de campo para usar no relatório
Enviado: Agosto 2nd, 2012, 11:24 am
por Leão
Nesse caso, pode usar Ptabela
var MsgErro : string;
CamposResultado_cli:variant;
begin
if AbandonandoEdicao then
Exit;
if not TabGlobal.DReceber.COD_CLIENTE.Valido(MsgErro) then
ErroValidacaoCampo(MsgErro, TabGlobal.DReceber.COD_CLIENTE);
if not SalvarRegistro then
ExecutaPreValidacoes(TabelaPrincipal, Self, ListaCamposEd);
///Gravar codigo da região
if not PTabela(TabGlobal.DClientes,['CODIGO'],[TabGlobal.DReceber.COD_CLIENTE.Conteudo],
['COD_REGIAO'],CamposResultado_cli) then
begin
ShowMessage('Código Cliente Informado Não Cadastrado...');
COD_CLIENTE.SetFocus;
exit;
end;
if not VarIsNull(CamposResultado_cli[0]) then TabGlobal.DReceber.COD_REGIAO.Conteudo:=CamposResultado_cli[0];
//se for inclusão valor.enable = true
if TabelaPrincipal.Inclusao then
begin
VALOR.Enabled:=True;
VENCTO.Enabled:=True;
end else
begin
VALOR.Enabled:=False;
VENCTO.Enabled:=False;
end;
end;
Obrigado,
Leão