Autor Tópico: [RESOLVIDO] Invalid argument supplied for foreach()  (Lida 497 vezes)

Jocimar

  • Expert
  • *****
  • Mensagens: 619
[RESOLVIDO] Invalid argument supplied for foreach()
« Online: Julho 11, 2016, 10:53:25 am »
Bom dia!
Após a fazer a seguinte alteração numa function de Biblioteca Interna:

De:
sc_lookup(rs, "SELECT cgfat.fatdtavct, cgfat.clicod, cgfat.fattotpar, cgfat.fatdtajur, cgfat.fatalqjur
                           FROM   web_gerencia.tbl_cgfat cgfat
                           WHERE  cgfat.loccod    =  ". $nT_EMPCOD    ."  AND cgfat.nfscod    =  ". $nT_NFSCOD    ."  AND
                                            cgfat.fatnumpar =  ". $nT_FATNUMPAR ."  AND cgfat.nfsdta    = '". $dT_NFSDTA    ."'" );

Para:
sc_lookup(rs, "SELECT cgfat.fatdtavct,
                                           cgfat.clicod, cgfat.fattotpar, cgfatjur.fatdtajur, cgfatjur.fatalqjur
                           FROM   web_gerencia.tbl_cgfat cgfat
                                          LEFT OUTER JOIN web_gerencia.tbl_cgfatjur cgfatjur USING ( loccod, nfscod, fatnumpar, nfsdta )
                           WHERE  cgfat.loccod    =  ". $nT_EMPCOD    ."  AND cgfat.nfscod    =  ". $nT_NFSCOD    ."  AND
                                            cgfat.fatnumpar =  ". $nT_FATNUMPAR ."  AND cgfat.nfsdta    = '". $dT_NFSDTA    ."'" );

E, ao tentar gerar o código fonte, está sendo apresentada a mensagem abaixo.

2 = Invalid argument supplied for foreach()
/opt/NetMake/v81/wwwroot/scriptcase/devel/lib/php/database.inc.php 1847
2 = Invalid argument supplied for foreach()

Obs.: Enviado também para feedback@ e bugs@
Espero que seja eu que esteja equivocado, pois a mensagem não me diz como proceder.
« Última modificação: Julho 11, 2016, 03:57:19 pm por Yuri Esteves »
Jocimar de Oliveira

Kleyber

  • Expert
  • *****
  • Mensagens: 2232
    • Email
Re:Invalid argument supplied for foreach()
« Responder #1 Online: Julho 11, 2016, 11:11:02 am »
Jocimar bom dia,

Experimentaste gerar uma view com esse novo select pra ver se funciona?
Kleyber Derick

ITIL® V3 Foundation Certified
Analista de Sistemas
São Luís - Maranhão
www.tkinformidia.net

Jailton

  • Expert
  • *****
  • Mensagens: 2030
Re:Invalid argument supplied for foreach()
« Responder #2 Online: Julho 11, 2016, 12:36:08 pm »
Colocar a SQL por fora:
$sql="SELECT ....";

sc_lookup(rs, $sql);
O Princípio da Vibração. "Nada está parado, tudo se move, tudo vibra". Caibalion.

Jocimar

  • Expert
  • *****
  • Mensagens: 619
Re:Invalid argument supplied for foreach()
« Responder #3 Online: Julho 11, 2016, 01:49:35 pm »
Colocar a SQL por fora:
$sql="SELECT ....";

sc_lookup(rs, $sql);

Grato pela dica Jailton,

Desta forma gerou o código fonte!
Da forma que apresentei utilizo no sistema inteiro, e ainda não havia obtido este erro ao gerar o código fonte, aos poucos vou ajustando para este formato de adicionar em variável a instrução.
Jocimar de Oliveira

Jocimar

  • Expert
  • *****
  • Mensagens: 619
Re:Invalid argument supplied for foreach()
« Responder #4 Online: Julho 11, 2016, 01:51:18 pm »
Jocimar bom dia,

Experimentaste gerar uma view com esse novo select pra ver se funciona?

Grato pela dica Kleyber,

Utilizo em muitos lugares do sistema SELECT's bem mais complexos mediante a este que apresentei, e até o momento o SC vêm funcionando. Vamos ver até onde, ...
Acredito que seja conforme o Jailton também deu a dica de utilizar a instrução na variável.
Jocimar de Oliveira

Jailton

  • Expert
  • *****
  • Mensagens: 2030
Re:[RESOLVIDO] Invalid argument supplied for foreach()
« Responder #5 Online: Julho 11, 2016, 02:26:27 pm »
Jocimar bom dia,

Experimentaste gerar uma view com esse novo select pra ver se funciona?

Grato pela dica Kleyber,

Utilizo em muitos lugares do sistema SELECT's bem mais complexos mediante a este que apresentei, e até o momento o SC vêm funcionando. Vamos ver até onde, ...
Acredito que seja conforme o Jailton também deu a dica de utilizar a instrução na variável.

Sim sempre usar a $sql=""; por fora, isso faz parte dos macetes do SC.
O Princípio da Vibração. "Nada está parado, tudo se move, tudo vibra". Caibalion.