Macro sc_select

Bom Dia pessoal!

Alguém já utilizou essa macro? Se sim por favor compartilha o exemplo!!!

sc_select(dataset, “Comando SQL”, “Conexão”)

Esta macro permite que o usuário execute comandos SQL e tenha acesso ao “dataset” proveniente do comando.
Diferente da macro sc_lookup, esta macro não manipula o dataset, deixando-o em sua forma original, cabendo ao usuário toda a manipulação.

Caso ocorra erro na execução do comando sql, a variável atribuida ao dataset retornará como “false” e a mensagem de erro estará disponível na variável “dataset_erro”.

O parâmetro “conexção” é opcional, sendo necessário se o comando for executado em uma base de dados diferente da especificada para a aplicação.

Ex. 1:
sc_select(meus_dados, “select clienteid, nomecliente, limitecred from clientes”);
if ({meus_dados} === false)
{
echo "Erro de acesso. Mensagem = " . {meus_dados_erro};
}
else
{
while (!$meus_dados->EOF){
{nome_cliente} = $meus_dados->fields[1];
$meus_dados->MoveNext();
}
$meus_dados->Close();
}

Bom dia!!!

1º) O exemplo você mesmo postou

Ex. 1:
sc_select(meus_dados, "select clienteid, nomecliente, limitecred from clientes");
if ({meus_dados} === false)
{
echo "Erro de acesso. Mensagem = " . {meus_dados_erro};
}
else
{
while (!$meus_dados->EOF){
{nome_cliente} = $meus_dados->fields[1];
$meus_dados->MoveNext();
}
$meus_dados->Close();
}

2º) Explique qual a sua dúvida?

Nunca utilizei esta macro. Uso mais sc_lookup, preciso percorrer o dataset e validar usando if comparando a posição do dataset com a variável do cadastro.

Olá,

No exemplo que deste, existe esta estrutura:

while (!$meus_dados->EOF){
{nome_cliente} = $meus_dados->fields[1];
$meus_dados->MoveNext();
}

Que faz exatamente o que você precisa, ou seja, varrer os registros. Então basta colocar os teus IFs onde deseja.