Pergunta direta: Existe o comando
$meus_dados->MoveFirst();
Após varrer com o $meus_dados->MoveNext(), tem como setar para o 1o registro novamente ?
Pergunta direta: Existe o comando
$meus_dados->MoveFirst();
Após varrer com o $meus_dados->MoveNext(), tem como setar para o 1o registro novamente ?
Na documentação do SC nada fala sobre isso.
Olá Haroldo, isso mesmo. Pesquisei e a documentação não fala nada. Até coloquei na minha aplicação blank, e não deu erro, mas também não move o ponteiro para o início novamente. Terei que fazer outro select ?
Sim, pode usar $meus_dados->MoveFirst() antes do while ().
Detalhe, só utilize $meus_dados->Close() depois de finalizar seu “trabalho” com os dois ou mais while()
A macro sc_select retorna um objeto ADO.
Assim você pode utilizar a função
var_dump ou print_r no dataset para explorar as funções disponíveis.
Obrigado pessoal.
As dicas do Jocimar e do Ronyan, ajudaram muito na solução do meu problema.
Tudo OK agora !!!
Comentei sobre isto em 10-01-2013 -> http://www.scriptcase.com.br/forum/index.php/topic,6087.msg28000.html#msg28000.
O John deu uma reposta em 07-11-2016.
E até hoje a documentação continua a mesma coisa.
Realmente. A documentação do SC está devendo estas implementações.
Eu usei MoveFirst() e não deu erro, porem nao pareceu funcionar.
Fui obrigado a abrir novamente a consulta.
Em termos básicos, a lógica era mais ou menos assim
while (!$ds->EOF) {
// faz alguma coisa
$ds->MoveNext();
}
// Agora deveria ir para o inicio novamente, mas nao vai
$ds->MoveFirst();
while (!$ds->EOF) {
// Aqui deveria fazer outra coisa, mas nao faz, porque aparentemente nem entra no loop
$ds->MoveNext();
}