Filtro para carregar nome de cliente[RESOLVIDO]

Olá a todos.
Estou desenvolvendo um sistema em que é dividido por módulos.
Cada módulo vai registrar uma informação do cliente.
Ex.: 1 módulo vai registrar as informações financeiras do cliente (conta, agencia, banco, etc);
outro módulo vai cadastrar informações dos dependentes (nome, data do nascimento, etc…);

Ao abrir a tela de cada módulo, teria como eu inserir o cpf desse cliente e ele já puxar o nome do cliente, para que eu possa colocar o restante das informações dele?

um quick search no formulário pelo cpf.

Olha aqui como fazer: http://www.scriptcase.com.br/blog/quick-search-formularios/

Moreira,
Acho que o que vc quer, deve ser feito através dos eventos ajax (onchange) do campo CPF. Faz um sc_lookup e pega os dados do cliente.
[]s

Em cada atendimento, o cliente receberá um código. Esse será o código pelo qual vou linkar as informações preenchidas nos módulos com o cliente

Talvez eu não esteja sendo claro com minha colocação. Deixa tentar de outra forma:

SITUAÇÂO: Restaurante… (exemplo)

  • cadastro meu cliente uma vez só.
  • a cada vez que meu cliente for no meu restaurante, ele receberá um código de atendimento
  • ele(cliente) pode fazer pedidos distintos, por exemplo: Hoje ele foi no restaurante e fez pedido de pizza, amanhã ele pode fazer pedido de sushis, de carnes etc…)
  • cada um desses módulos, cadastra o pedido do meu cliente. Exemplo: módulo pizzaria cadastra a quantidade de pizzas que ele quer, sabores, valor etc… módulo carnes, cadastra os tipos de carnes, acompanhamentos, valor etc…
  • para acessar cada módulo e dizer qual o cliente está comprando o quê, preciso colocar um filtro que, ao inserir o código de atendimento para ele, o sistema carregue, no campo “nome do cliente” o nome completo dele. somente o nome…
  • no final do atendimento, eu possa listar tudo o que ele comprou e os valores, com nome, pedidos e valores.

Não sei como criar esse filtro em cada módulo

Vc cria um campo codigo do cliente nos módulos. No evento ajax (onchange) desse campo, vc usa a macro sc_lookup para buscar os dados do cliente e preencher os campos que vc precisa (nome, cpf, endereçe etc)
[]s

Como você vai gerar um novo código de atendimento ‘único’ para este cliente cada vez que ele for no restaurante, aconselho a usar o sc_lookup no evento Ajax OnBlur em cima deste código de atendimento, ai com o sc_lookup vc vai buscar no código desse atendimento e pegar o código do cliente relacionado ao atendimento ‘único’ e depois, preencher os campos desejados com nome, etc.
https://suporte.scriptcase.com.br/index.php?/Knowledgebase/Article/View/181/10/usando-a-macro-sc_lookup.

Estou tentando, mas sem sucesso…
Estou fazendo algo errado e ainda não descobrí o que é…
Sorry

Minhas tabelas:
t_atendimento = onde esta tem como campos atendimento_pk, data_atendimento e t_clientes_clientes_pk (a fk da tabela clientes
t_clientes = com as colunas cliente_pk, nome_cliente etc…

criei um evento ajax onChange com os campos CODCLIENTE (onde digito o código do atendimento) e o Campo NOME (Onde deve aparecer o nome do cliente)

meu sc_lookup ficou assim: sc_lookup(ds,“SELECT t_clientes_clientes_pk FROM t_atendimento
WHERE atendimento_pk = {atendimento_pk}”);
{t_clientes_clientes_pk} = {ds[0][0]};

O que estou errando???

Alguém pode me ajudar???

Manda um print das tuas telas e o código doa eventos
Abraços

TELA DE ATENDIMENTO - Onde cadastro o paciente para o atendimento do dia. Sua ID é o Código do cliente


ATENDIMENTO.PNG

hematológico - no campo código do cliente, preciso digitar a ID da tela de atendimento, e no campo “cliente” deve surgir o nome do cliente correspondente aquele ID


HEMATOLOGICO.PNG

tattomoreira,

Acho que teu lookup deveria ser assim:

sc_lookup(ds,“SELECT a.t_clientes_clientes_pk, c.nome_cliente FROM t_clientes c, t_atendimento a
WHERE c.cliente.pk = a.t_clientes_clientes_pk AND a.atendimento_pk = {atendimento_pk}”);
{t_clientes_clientes_pk} = {ds[0][0]};
{nome} = {ds[0][1]};

Seria um evento Ajax OnChange com esse lookup… não é isso???

Exato. No campo CÓDIGO DO CLIENTE no módulo hematológico.

Pessoal, conseguí com a AULA que o Kleyber me deu …

Criei um campo texto para receber o nome do cliente e um evento ajax onChange para pegar os campos codCliente e nomeCliente…

sc_lookup(ds,“SELECT c.nome FROM t_clientes c
WHERE c.clientes_pk = {codCliente}”);
{nomeCliente} = {ds[0][0]};

Muito obrigado a todos… Especialmente ao Kleyber… Obg mesmo!!!

It seems like you’ve made good progress! I agree with Kleyber’s approach for your sc_lookup. For future reference, when working with the onChange event, it’s crucial to ensure the sc_lookup is correctly fetching the data based on the unique identifier. You did a great job adjusting the query to pull the client’s name from the correct tables.

One tip I’d like to add: if you encounter any issues in the future where the client’s name isn’t being fetched, try adding a sc_alert() before the assignment to verify the data coming back from the lookup. It can help debug and make sure the query is pulling the right result.

By the way, just as a tattoo on forearm often represents a deeply personal message or story, your code should also reflect attention to detail and precision, ensuring it clearly communicates your intent and functions as expected.