[RESOLVIDO] Impressão Cupom Usando Grid - Não consigo

Minha situação é:
Tenho um formulário, que a partir deste criei um botão para imprimir os pedidos em impressora, ao clicar no botão ele abre uma grid que criei usando um Formato Livre para usar como template: aí está o meu problema, é passar todos os itens do pedido para dentro do template html que fiz para o Formato livre, vejam que possa me ajudar.

No template coloquei o seguinte código…


<head>
<title>www.propaguem.com.br/intelligence</title>
  
  
  
  
  <style>

.ttu { text-transform: uppercase; }

.printer-ticket {
	display: table !important;
	width: 100%;
	max-width: 400px;
	font-weight: light;
	line-height: 1.3em;
	@printer-padding-base: 10px;
	font-family: Tahoma, Geneva, sans-serif;
	font-size: 10px;
	
	}

	th:nth-child(2),
	td:nth-child(2) {
		width: 50px;
	}
	
	th:nth-child(3) ,
	td:nth-child(3) {
		width: 90px; text-align: right;
	}
	
	th {
		font-weight: inherit;
		padding: @printer-padding-base 0;
		text-align: center;
		border-bottom: 1px dashed @color-gray;
	}
	tbody {
		tr:last-child td { padding-bottom: @printer-padding-base; }
	}
	tfoot {
		.sup td {
			padding: @printer-padding-base 0;
			border-top: 1px dashed @color-gray;
		}
		.sup.p--0 td { padding-bottom: 0; }
	}
	
	.title { font-size: 1.5em; padding: @printer-padding-base*1.5 0; }
	.top {
		td { padding-top: @printer-padding-base; }
	}
	.last td { padding-bottom: @printer-padding-base; }
}
</style>
  
  
  
  
  
  
  
</head>

<body text=#000000 bgColor=#ffffff topMargin=0 rightMargin=0>

<table class="printer-ticket">
 	<thead>
		<tr>
			<th class="title" colspan="3">Multfoto Revelação Digital</th>
		</tr>
		<tr>
			<th colspan="3">{data_os}</th>
		</tr>
		<tr>
			<th colspan="3">
				{id_cliente} <br />
				000.000.000-00
			</th>
		</tr>
		<tr>
			<th class="ttu" colspan="3">
				<b>Cupom não fiscal</b>
			</th>
		</tr>
	</thead>
	<tbody>
	


{list}
	
      
		
	</tbody>
	<tfoot>
		<tr class="sup ttu p--0">
			<td>Total</td>
			<td></td>
          <td>R$45,56</td>
		</tr>
		<tr class="sup">
			<td colspan="3" align="center">
				<b>Pedido: {id_os}</b>
			</td>
		</tr>
		<tr class="sup">
			<td colspan="3" align="center">
				www.multfoto.com.br
			</td>
		</tr>
	</tfoot>
</table>
  
  
  
  
  </body>

E na grid dentro do onScriptInit coloquei o seguinte código, mas observo que dentro do código anterior que é do html coloquei {list} que deveria trazer os ítens do código abaixo, mas está ficando em branco ao executar a grid… o que eu fiz de errado pessoal…?

Segue o código da grid…

$id_os = [idos];

$sql_pedido = "SELECT
					id_os,
					id_cliente,
					plano_pagamento,
					data_os,
					id_produto,
					obs_produto,
					quantidade,
					valor_unitario,
					desconto,
					acrescimo,
					total,
					tipo_mercadoria,
					status_laboratorio,
					obs_laboratorio,
					status_loja
				FROM
					oslojadetalhe
				where
				id_os = ".[idos];


sc_lookup(ds_pedido, $sql_pedido);

foreach({ds_pedido} as $arr_pedido)
{
	$select_nome_produto = "SELECT produto_servico FROM produtoservico WHERE idprodutoServico = ".$arr_pedido[4];
	sc_lookup(ds_nome_produto, $select_nome_produto);
	$nome_produto = {ds_nome_produto[0][0]};
	echo
		$listaprodutos .= "
			<tr class='top'>
			<td colspan="3">PRODUTO: ".$nome_produto."</td>
		</tr>
        
		<tr>
			<td>Unitário R$".$arr_pedido[7]."</td>
			<td>Qtd: ".$arr_pedido[6]."</td>
			<td>Total: R$".$arr_pedido[10]."</td>
		</tr>
		<tr>
			<td colspan='3'>Obs:".$arr_pedido[5]."</td>
		</tr>
		";
}

{list} = $listaprodutos;


no html não deveria fica assim:
<?php {list} ?>
correção pelo haroldo mais abaixo:
Faltou a vírgula e o echo.

<?php echo {list}; ?>

Não, ele já interpreta, mas mesmo assim testei, mas não funcionou…

Joelton, você não pode misturar html e php.

{list} é php

Se está dentro de uma sessão Html, tem que escapara para o php. De que forma?

<?php= {list}; ?>

ou

<?php echo {list}; ?>

Já havia feito isto, mas continuou em branco…

Se alguém tenha uma outra opção eu aceito… meu negócio é imprimir itens de um pedido em uma aplicação com um layout de cupom personalizado

Debug?

{list} tem dados???

Rapa… acredito que no Debug ele não gera nada, exceto o log que controlo…rsrrs
O que está acontecendo…??

Adaptei e tentei fazer na blank, mas gerou nada, tudo em branco…

[code]
$id_os = [idos];

$sql_pedido = "SELECT
id_os,
id_cliente,
plano_pagamento,
data_os,
id_produto,
obs_produto,
quantidade,
valor_unitario,
desconto,
acrescimo,
total,
tipo_mercadoria,
status_laboratorio,
obs_laboratorio,
status_loja
FROM
oslojadetalhe
where
id_os = ".[idos];

sc_lookup(ds_pedido, $sql_pedido);

foreach({ds_pedido} as $arr_pedido)
{
$select_nome_produto = "SELECT produto_servico FROM produtoservico WHERE idprodutoServico = ".$arr_pedido[4];
sc_lookup(ds_nome_produto, $select_nome_produto);
$nome_produto = {ds_nome_produto[0][0]};
echo
$listaprodutos .= "


PRODUTO: “.$nome_produto.”
	<tr>
		<td>Unitário R$".$arr_pedido[7]."</td>
		<td>Qtd: ".$arr_pedido[6]."</td>
		<td>Total: R$".$arr_pedido[10]."</td>
	</tr>
	<tr>
		<td colspan='3'>Obs:".$arr_pedido[5]."</td>
	</tr>
	";

}

?>
Sair

Pedido de Venda <?php echo $id_os; ?> www.site.com.br .ttu { text-transform: uppercase; } .printer-ticket { display: table !important; width: 100%; max-width: 400px; font-weight: light; line-height: 1.3em; @printer-padding-base: 10px; font-family: Tahoma, Geneva, sans-serif; font-size: 10px; } th:nth-child(2), td:nth-child(2) { width: 50px; } th:nth-child(3) , td:nth-child(3) { width: 90px; text-align: right; } th { font-weight: inherit; padding: @printer-padding-base 0; text-align: center; border-bottom: 1px dashed @color-gray; } tbody { tr:last-child td { padding-bottom: @printer-padding-base; } } tfoot { .sup td { padding: @printer-padding-base 0; border-top: 1px dashed @color-gray; } .sup.p--0 td { padding-bottom: 0; } } .title { font-size: 1.5em; padding: @printer-padding-base*1.5 0; } .top { td { padding-top: @printer-padding-base; } } .last td { padding-bottom: @printer-padding-base; } } <?php echo $listaprodutos; ?>
</tbody>
<tfoot>
	<tr class="sup ttu p--0">
		<td>Total</td>
		<td></td>
      <td>R$45,56</td>
	</tr>
	<tr class="sup">
		<td colspan="3" align="center">
			<b>Pedido: {id_os}</b>
		</td>
	</tr>
	<tr class="sup">
		<td colspan="3" align="center">
			www.site.com.br
		</td>
	</tr>
</tfoot>
Meu Sistema
{data_os}
{id_cliente}
000.000.000-00
Cupom não fiscal
<?php[/code]

Faça:
var_dump({list});
é fale o que ele retorna.

nada

Fiz todos os meus testes, e realmente um dos problemas era o where usando a variável fiz a correção, e também que usei aspas duplas no

, e alterei para e alterei o local do código, joguei tudo dentro do onRecord, agora aparece meu layout tudo certinho e os valores, mas vem apenas com a mensagem de erro abaixo… o restante está certo, alguém tem a idéia de como tirar esta bendita mensagem?

Atenção
Undefined variable: listaprodutos

O código está na grid em onRecord desta forma:

$id_os = [idos];
$sql_pedido = "SELECT
					id_os,
					id_cliente,
					plano_pagamento,
					data_os,
					id_produto,
					obs_produto,
					quantidade,
					valor_unitario,
					desconto,
					acrescimo,
					total,
					tipo_mercadoria,
					status_laboratorio,
					obs_laboratorio,
					status_loja
				FROM
					oslojadetalhe
				where
				id_os = ".$id_os;


sc_lookup(ds_pedido, $sql_pedido);

foreach({ds_pedido} as $arr_pedido)
{
	$select_nome_produto = "SELECT produto_servico FROM produtoservico WHERE idprodutoServico = ".$arr_pedido[4];
	sc_lookup(ds_nome_produto, $select_nome_produto);
	$nome_produto = {ds_nome_produto[0][0]};
	
		$listaprodutos .= "
			<tr class='top'>
			<td colspan='3'>PRODUTO: ".$nome_produto."</td>
		</tr>
        
		<tr>
			<td>Unitário R$".$arr_pedido[7]."</td>
			<td>Qtd: ".$arr_pedido[6]."</td>
			<td>Total: R$".$arr_pedido[10]."</td>
		</tr>
		<tr>
			<td colspan='3'>Obs:".$arr_pedido[5]."</td>
		</tr>
		";
}

{list} = $listaprodutos;


Agora tudo resolvido a impressão de cupom usando grid em Formato Livre e dentro do onRecord…
Na grid segue o código:

$id_os = [idos];

$sql_pedido = "SELECT
					id_os,
					id_cliente,
					plano_pagamento,
					data_os,
					id_produto,
					obs_produto,
					quantidade,
					valor_unitario,
					desconto,
					acrescimo,
					total,
					tipo_mercadoria,
					status_laboratorio,
					obs_laboratorio,
					status_loja
				FROM
					oslojadetalhe
				where
				id_os = ".$id_os;

$listaprodutos="";

sc_lookup(ds_pedido, $sql_pedido);

foreach({ds_pedido} as $arr_pedido)
{
	$select_nome_produto = "SELECT produto_servico FROM produtoservico WHERE idprodutoServico = ".$arr_pedido[4];
	sc_lookup(ds_nome_produto, $select_nome_produto);
	$nome_produto = {ds_nome_produto[0][0]};
	
		$listaprodutos .= "
			<tr class='top'>
			<td colspan='3'>PRODUTO: ".$nome_produto."</td>
		</tr>
        
		<tr>
			<td>Unitário R$".$arr_pedido[7]."</td>
			<td>Qtd: ".$arr_pedido[6]."</td>
			<td>Total: R$".$arr_pedido[10]."</td>
		</tr>
		<tr>
			<td colspan='3'>Obs:".$arr_pedido[5]."</td>
		</tr>
		";
}

{list} = $listaprodutos;

Bom dia Joelton.

Seria interessante dizer o que estava de errado para não funcionar.

Claro, o último erro foi a falta de declarar a variável sem valor…
$listaprodutos="";