Erro ao Chamar Aplicação Blank

Olá pessoal,

Criei numa aplicação de consulta um botão (Visualizar) onde passo o seguinte código:

sc_redir(relAgenda, vlEvento={Evento_ID}, “_blank”);

Ele chega a abrir a página, mas na página de consulta aparece o seguinte erro:

Atenção
Undefined variable: evento_id

Alguém sabe me dizer se o porque disso?

Atenciosamente,

Ilano.

Está dizendo que o campo Evento_ID não existe.

Mas ele existe!

http://www.mdierp.com.br/files/img_001.png

http://www.mdierp.com.br/files/img_002.png

ta muito errado isso , a grid não salva que linha tu ta posicionado.
coloque o botão na propria linha da grid e faça a ligação dele

Willian Fernando, cara, era isso mesmo. Fiz a ligação e funcionou. Só que ao abrir o relatório aparece no final a mensagem:

Atenção
Undefined offset: 2

E agora, o que pode ser? Segue abaixo o script dessa aplicação (blank). Por enquanto é apenas um teste, ainda vou melhorar o incremento da última consulta.

$sql = "SELECT Evento_ID, ME_ID, Evento_Titulo, DATE_FORMAT(Evento_DataInicial, '%d%m%Y') AS DATAINICIAL, DATE_FORMAT(Evento_DataFinal, '%d%m%Y') AS DATAFINAL, Evento_Periodo, Evento_Descricao, Evento_Publicar, Evento_CriaCracha, Evento_Investimento FROM c001_eventos WHERE ME_ID = [vlME] AND Evento_ID = [vlEvento] ";

sc_lookup(Ds, $sql);

if(!empty({Ds}))
{
$titulo = {Ds[0][2]};
$dtinicial = {Ds[0][3]};
$dtfinal = {Ds[0][4]};
$periodo = {Ds[0][5]};
$publicar = {Ds[0][6]};
$descricao = {Ds[0][7]};
$publicar = {Ds[0][8]};
$investimento = {Ds[0][9]};

echo "<table width='100%' border='0' cellpadding='0' cellspacing='0'>
  <tr>
	<td valign='top' style='width:50%; font-family:sans-serif; font-size:11pt; text-align:justify; padding:0px 10px 0px 10px;'>
		<div style='font-weight:bold;'>Título:</div>
		<div>$titulo</div>
		<div style='font-weight:bold;'>Data Inicial:</div>
		<div>$dtinicial</div>
		<div style='font-weight:bold;'>Data Final:</div>
		<div>$dtfinal</div>
		<div style='font-weight:bold;'>Período:</div>
		<div>$periodo</div>
	</td>
	<td valign='top' style='width:50%; font-family:sans-serif; font-size:11pt; text-align:justify; padding:0px 10px 0px 10px;' >
		<div style='font-weight:bold;'>Publicação:</div>
		<div>$publicar</div>
		<div style='font-weight:bold;'>Valor do Investimento:</div>
		<div>$investimento</div>
		<div style='font-weight:bold;'>Descrição:</div>
		<div>$descricao</div>
	</td>
  </tr>
</table>
";

} else
{
echo “

Nenhum dado foi retornado.
”;
};

$sql0 = "SELECT COUNT(*) FROM c002_agenda
WHERE Evento_ID = [vlEvento] ";
$total = 0;

sc_lookup(Ds, $sql0);

if(!empty({Ds}))
{
$total = {Ds[0][0]};
};

$sql = "SELECT
Agenda_ID,
Evento_ID,
ME_ID,
Agenda_Titulo,
Agenda_Descricao,
DATE_FORMAT(Agenda_DataInicial, ‘%d%m%Y’) AS DATAINICIAL,
Agenda_HoraInicial,
DATE_FORMAT(Agenda_DataFinal, ‘%d%m%Y’) AS DATAFINAL,
Agenda_HoraFinal,
Agenda_Retorno,
Agenda_Periodo
FROM c002_agenda
WHERE Evento_ID = [vlEvento] ";

sc_lookup(Ds, $sql);

if(!empty({Ds}))
{
echo “

”;
$var = 0;
while ($var <= $total)
{
$titulo = {Ds[$var][3]}."
";
echo $titulo;
$var++;
};
echo $titulo;
echo “
”;
};

Bom dia Ilano, dá um echo na sua primeira sql e veja o que esta retornando. Provavelmente o problema está alí.

Olá Thyago Brasil,

Mais uma vez agradeço sua ajuda. Seguinte, já ativei o modo debug pra ver isso e não encontrei problema algum no SQL. Já copiei o script pra rodar direto no banco e também rolou perfeitamente. Fiz o mesmo com os demais SQLs e que também rolaram numa boa. Já quanto ao erro, no modo debug não acusou nada.

Alterei o código, mas continua com o mesmo problema e incrementando valores nulos no final.
A última consulta, era para retornar apenas dois registros mas a rotina está trazendo um terceiro bloco com valores nulos.
Vejam o resultado nesse link abaixo. O modo debug está ativo.

http://www.mdierp.com.br/scriptcase/app/amigoseparceiros/relAgenda/relAgenda_teste.php?nmgp_outra_jan=true&nmgp_start=SC&script_case_session=a5040e04138e660cc810a42b99880f48&5663

Os valores dos parâmetros são:

vlME = 3
vlEvento = 1

$sql = "SELECT Evento_ID, ME_ID, Evento_Titulo, DATE_FORMAT(Evento_DataInicial, '%d/%m/%Y') AS DATAINICIAL, DATE_FORMAT(Evento_DataFinal, '%d/%m/%Y') AS DATAFINAL, Evento_Periodo, Evento_Descricao, CASE Evento_Publicar WHEN 1 THEN 'Publicado' ELSE 'Não Publicado' END, CASE Evento_CriaCracha WHEN 1 THEN 'Será Confeccionado Crachá' ELSE 'Não possui crachá' END, Evento_Investimento FROM c001_eventos WHERE ME_ID = [vlME] AND Evento_ID = [vlEvento] ";

sc_lookup(Ds, $sql);

if(!empty({Ds}))
{
$titulo = {Ds[0][2]};
$dtinicial = {Ds[0][3]};
$dtfinal = {Ds[0][4]};
$periodo = {Ds[0][5]};
$descricao = {Ds[0][6]};
$publicar = {Ds[0][7]};
$cracha = {Ds[0][8]};
$investimento = {Ds[0][9]};

echo "<div style='text-align:center; font-size:14pt; font-family:sans-serif; font-weight:bold; margin-bottom:20px;'>MEUS EVENTOS</div>";

echo "<table width='100%' border='0' cellpadding='0' cellspacing='0'>
  <tr>
	<td valign='top' style='width:50%; font-family:sans-serif; font-size:11pt; text-align:justify; padding:0px 10px 0px 10px;'>
		<div style='font-weight:bold;'>Título:</div>
		<div>$titulo</div>
		<div style='font-weight:bold;'>Data Inicial:</div>
		<div>$dtinicial</div>
		<div style='font-weight:bold;'>Data Final:</div>
		<div>$dtfinal</div>
		<div style='font-weight:bold;'>Período:</div>
		<div>$periodo</div>
	</td>
	<td valign='top' style='width:50%; font-family:sans-serif; font-size:11pt; text-align:justify; padding:0px 10px 0px 10px;' >
		<div style='font-weight:bold;'>Publicação:</div>
		<div>$publicar</div>
		<div style='font-weight:bold;'>Confecção de Crachá:</div>
		<div>$cracha</div>
		<div style='font-weight:bold;'>Valor do Investimento:</div>
		<div>$investimento</div>
		<div style='font-weight:bold;'>Descrição:</div>
		<div>$descricao</div>
	</td>
  </tr>
</table>
";

} else
{
echo “

Nenhum dado foi retornado.
”;
};

$sql = "SELECT COUNT(*) FROM c002_agenda
WHERE Evento_ID = [vlEvento] ";
$total = 0;

sc_lookup(Ds, $sql);

if(!empty({Ds}))
{
$total = {Ds[0][0]};
} else
{
$total = 0;
};

$sql = "SELECT
Agenda_ID,
Evento_ID,
ME_ID,
Agenda_Titulo,
Agenda_Descricao,
DATE_FORMAT(Agenda_DataInicial, ‘%d/%m/%Y’) AS DATAINICIAL,
Agenda_HoraInicial,
DATE_FORMAT(Agenda_DataFinal, ‘%d/%m/%Y’) AS DATAFINAL,
Agenda_HoraFinal,
Agenda_Retorno,
Agenda_Periodo
FROM c002_agenda
WHERE Evento_ID = [vlEvento] ";

sc_lookup(Ds, $sql);

if(!empty({Ds}))
{
echo “

”;
//echo “”;
$var = 0;
while ($var <= $total)
{
$titulo = “
Título: “.{Ds[$var][3]}.”
”;
$dt1 = “
Data/Hora de Início: “.{Ds[$var][5]}.”/”.{Ds[$var][6]}."
";
$dt2 = “
Data/Hora de Término: “.{Ds[$var][7]}.”/”.{Ds[$var][8]}."
";
$periodo = “
Período: “.{Ds[$var][10]}.”
”;
$descricao = “
Comentário: “.{Ds[$var][4]}.”
”;
$linha = “

”;
		if($var < $total)
		{
			echo $titulo.$dt1.$dt2.$periodo.$descricao.$linha;
		} else
			{
				echo $titulo.$dt1.$dt2.$periodo.$descricao;
			};
		$var++;
	};
//echo $titulo;
//echo "</table>";
echo "</div>";

};

Resolvido galera!
Só precisava alterar a linha

while ($var <= $total)

por

while ($var < $total)

Obrigado pela atenção de todos.

alterer o titulo e adicione [RESOLVIDO]