CRITICO!!! Passagem de parâmetro - Consulta / Formulario - Programação - Scriptcase
CRITICO!!! Passagem de parâmetro - Consulta / Formulario
LuisGustavo (LuisGustavo) Abril 15, 2019, 11:58pm #1
Boa tarde sr(a)s…
Passei o final de semana tentando resolver um dilema que era simplesmente passar como parametro o id de uma consulta para um formulario simples…
Tentei de diversas maneiras … sc_redir, sc_link, com variavel global… logicamente que cada um na sua sintaxe… porem unica solução que encontrei foi criar uma ligação da minha consulta como se eu fosse edita-la e ai criar um campo LABEL onde na onload eu atribui o seu conteúdo como sendo um link conforme abaixo.
{gerar_cdm} = "<a href="…//form_tb_cdm/form_tb_cdm.php?id_etiqueta="."{tran_id}"."" >Gerar CDM";
No meu formulario onde eu precisa da variável eu ia testando com as linhas abaixo e ele sempre ele me retornava vazio para a variavel id_etiqueta quando eu utilizava as funcoes:
echo " get ==== " . $_GET["id_etiqueta"] . "
echo " post === " . $_POST["id_etiqueta"] . "
echo " global = " . [id_transferencia] . "
sc_link (Eu crirei um campo html_imagem na minha consulta, coloquei os parametros, tudo conforme a regra… ele chama a aplicação mas nada de mostrar o conteudo)
sc_redir(Para esta função eu criei um botao php, tbm tudo conforme o figurino, ele chama a aplicação mas nada de trazer o conteudo da variavel id_etiqueta)
Tentei usar todas as maneiras existentes mostradas aqui no forum e no help, nenhuma funcionou…
ex: (Só para mostrar os comandos encontrados no forum
sc_redir(http://localhost:85/ramati.php?emp_cod=$var_emp_cod) //Com paramentro junto
sc_redir(ramati.php, emp_cod={var_emp_cod}) //Com paramentro separado
o mesmo com o sc_link… diversas maneiras todas rodam sem erro, porem não retornam o valor de id_etiquta…
Agora pergunto… essas funções realmente funciona com alguem nesta situação… consulta / Formulario??? não encontrei ninguem no forum que obteve sucesso.
Sendo que a unica solução que encontrei foi a descrita acima… fazer uma ligação para editar o registro, incluir um campo label e alterar seu conteudo conforme comando acima…
Bom é isso… só quero ter certeza que não estou fazendo nenhuma besteira e deixar uma solução para alguem que encontre a mesma dificuldade.
InfinitusWeb (Haroldo) Abril 15, 2019, 11:58pm #2
LuisGustavo (LuisGustavo) Abril 15, 2019, 11:58pm #3
Ola Harold…
Mas qual é a magia!? rs…
pode me dar uma exemplo… de postagem com retorno?
Esta certo a maneira com que usei para receber a variavel postada pelo sc_link?
Qual seria a maneira correta?
InfinitusWeb (Haroldo) Abril 15, 2019, 11:58pm #4
Você tem diversas opções para passar parâmetros entre aplicações:
No caso da consulta:
ligação de campos, botão de ligação, criar um campo label e colocar um código html.
na aplicação chamada apenas utilize o campo [CAMPOPASSADO] que o sc relatará no momento da criação da ligação.
Em base de conhecimento no site do sc tem exemplos de utilização.
LuisGustavo (LuisGustavo) Abril 15, 2019, 11:58pm #5
Caro amigo, após mais uns dias quebranco a cabeça no meu problema pergunto, existe uma solução?
Eu tenho uma consulta em que quero pegar o ID e passar para um formulario em branco (em branco para uma nova inclusao). A intenção disso é pegar algumas informações já digitadas de uma tabela para aproveitar no formulario.
Como eu fiz isso:
Teste em todos os eventos iniciais, onload, init… e em ambos só funciona no caso de eu deixar se o teste inicial que verifica se existe a variavel utilizada para passagem de parametro com o id do registro necessario. Na primeira vez que eu clico no link de ligação ele abre o formulario com os registro em aberto, porem com os campos automaticos certos… na segunda ele traz o formulario em branco com os dados certos… estou ficando doido com isso! rs…
if(isset($id_etiqueta)){
sc_apl_conf("form_tb_cdm", "start", "new");
$id_etiqueta = $_GET["id_etiqueta"];
sc_lookup(transf, "
tran_id,
tran_modelo_produto,
tran_descricao_produto,
tran_pn_produto,
tran_quant_produzida,
tran_turno,
tran_num_etiqueta,
tran_num_quebra
tb_transferencia
(tran_id = '$id_etiqueta')
if (FALSE === {transf}) {
sc_error_message("Ocorreu um erro no acesso ao banco de dados.<BR>");
elseif (empty({transf})) {
sc_error_message("Nenhum valor foi retornado pelo banco.<BR>");
// Carrega os campos preenchidos automaticamente.
{tb_cdm_pn}		= {transf[0][3]};
{tb_cdm_descricao}	= {transf[0][2]};
{tb_cdm_modelo}		= {transf[0][1]};
{tb_cdm_turno}		= {transf[0][5]};
{tb_cdm_quant_lote}	= {transf[0][4]};
{tb_cdm_num_etiqueta}	= {transf[0][6]};
Existe uma solução mais simples para se fazer isso, abrir um form em branco e buscar os dados de uma outra tabela atraves do parametro passado.