Autor Tópico: Erro Aplicação de Formulário com Progress  (Lida 1549 vezes)

msilva

  • Visitante
Erro Aplicação de Formulário com Progress
« Online: Junho 23, 2007, 04:39:35 pm »
Faz algumas semanas que relatei um problema na geração de formulário com BD Progress, porém até o momento não foi enviado nenhuma resposta sobre o assunto. Também postei aqui no FORUM, mas a sugestão de mudar o código gerado pelo SC3, apesar de inviável, foi feita e não apresentou sucesso. Provavelmente a Netmake entede que para correção de BUG, tenho que contratar serviço de UPGRADE, isso não é uma prática exclusiva da Netmake e acredito não está amparada em nenhuma lei de software.

Isto é claro que não ocorre quando você compra a licença de uso do Windows, Norton, etc., pois são realizadas atualizações para correção de problemas independente do tempo em que foi adquirida a licença.

Usei a versão 2 para fazer o mesmo formulário e funcionou sem problemas, inclusive o código gerado está com aspas dupla na clausula select.


=========================/======================
Código SC2:

              $nmgp_select = "SELECT \"Cust-Num\", Name, Address, Address2, City, State, Country, Phone, Contact, \"Sales-Rep\", Comments, \"Credit-Limit\", Balance, Terms, Discount, \"Postal-Code\" from " . $this->ini->nm_tabela ;
          }
          if ($this->nmgp_opcao == "igual")
          {
              if (in_array(strtolower($this->ini->nm_tpbanco), $this->ini->nm_bases_access))
              {
                  $nmgp_select .= " WHERE  \"Cust-Num\" = $cust_num ";
              } 
              else 
              {
                  $nmgp_select .= " WHERE  \"Cust-Num\" = $cust_num ";
              } 
          }
          if ($_SESSION['sc_session'][$this->ini->sc_page]['frmCustomer']['run_iframe'] == "F" || $_SESSION['sc_session'][$this->ini->sc_page]['frmCustomer']['run_iframe'] == "R")
          {


====================//======================

Código SC3

          $_SESSION['sc_session'][$this->Ini->sc_page]['frmCustomer']['dados_select'] = $this->nmgp_dados_select;

          if (!isset($_SESSION['sc_session'][$this->Ini->sc_page]['frmCustomer']['total']))
          {
               $sc_where_pos = " WHERE (("Cust-Num" < $this->cust_num))";
               if ('' != $sc_where)
               {
                   if ('where ' == strtolower(substr(trim($sc_where), 0, 6)))
                   {
                       $sc_where = substr(trim($sc_where), 6);
                   }
                   if ('and ' == strtolower(substr(trim($sc_where), 0, 4)))
                   {
                       $sc_where = substr(trim($sc_where), 4);
                   }
                   $sc_where_pos .= ' AND (' . $sc_where . ')';
                   $sc_where = ' WHERE ' . $sc_where;

========================/===========================

Grata,
Msilva.

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re: Erro Aplicação de Formulário com Progress
« Responder #1 Online: Junho 26, 2007, 06:15:20 pm »
Fiz diversos relatórios usando o SC3 e o Postgree, é bem verdade que no início estava tendo problemas, reportei ao Suporte e nada, mas ai descobri como o sql do postgree fucniona, e consegui resolver os problemas. para o Postgree nos comandos SQL, a formatação gerado pelo SC3 da erro, mas voce pode fazer manualmente,segue um exemplo de uma consulta:

SELECT
   ag."CO_AGENCIA",
   ag."NO_AGENCIA",
   ag."NO_ABREVIADO",
   ag."ESTADO",
   ag."STATUS",
   ag."BAUDRATE",
   ag."BANDA_LIMITE",
   ag."BANDA_REDE",
   ag."PERC_BANDA_LIM",
   ag."PORTA_SERIAL",
   ag."ENDERECO",
   ag."BAIRRO",
   ag."CEP",
   ag."CO_CIDADE",
   cid."NO_CIDADE",
   AG."CO_CENTRAL",
   ucm."NO_CENTRAL"
FROM
   public."MNSEG002" ag INNER JOIN public."MNSEG016" cid ON ag."CO_CIDADE" = cid."CO_CIDADE"
   INNER JOIN public."MNSEG005" ucm ON ag."CO_CENTRAL" = ucm."CO_CENTRAL"
   ORDER BY XXX