menu
Fórum Adianti
menu Menu
Erro , classes nativas ( not found ) Prezados, boa tarde ! Estou tendo alguns problemas para utilizar as classes nativas do framework , TTransaction por exemplo . Estou usando ajax ,e quando faço chamada do arquivo com as funções nativas do framework, apresenta a mensagem de classe TTransaction not found . Eu ja tentei utilizar o arquivo Functions.php em diversos lugares como : app/lib/util/Functions.php , app/resources...
FM
Erro , classes nativas ( not found )  
Prezados, boa tarde !

Estou tendo alguns problemas para utilizar as classes nativas do framework , TTransaction por exemplo .

Estou usando ajax ,e quando faço chamada do arquivo com as funções nativas do framework, apresenta a mensagem de classe TTransaction not found .


Eu ja tentei utilizar o arquivo Functions.php em diversos lugares como : app/lib/util/Functions.php , app/resources/contratoGas/FunctionsContratoGas_old.php, porém só agora na pasta ROOT e dando require_once no init.php, o erro mudou pra esse :

Uncaught Error: Class 'AdiantiCoreAdiantiApplicationLoader' not found in C:xampphtdocsPortalAmericalibadianticoreAdiantiCoreLoader.php:78


Como faço pra utilizar essas funções nativas do Framework de forma correta ?

Segue a estrutura :

JS com post

$.ajax({ url: 'app/resources/contratoGas/ajax.php', type: 'post', dataType: "json", data: {'ID_CONTRATO': ID_CONTRATO,'id_fatura_contrato_': id_fatura_contrato_}, success: function (result) { console.log(result) }, error: function (xhr, desc, err) { console.log(xhr); console.log("Details: " + desc + "\nError:" + err); } });



ajax.php no diretório app/resources/contratoGas/ajax.php :


  1. <?php 
  2. include_once("../../../Functions.php");
  3. if(!empty($_POST['ID_CONTRATO']))
  4. {    
  5.     $ID_CONTRATO $_POST['ID_CONTRATO'];
  6.     Functions::atrelarFatura($ID_CONTRATO);
  7. }
  8. ?>


Functions.php localizado no diretório root :


  1. <?php
  2. require_once 'init.php';
  3. use Adianti\Database\TTransaction;
  4. use Adianti\Widget\Base\TElement;
  5. use Adianti\Database\TCriteria;
  6. use Adianti\Database\TFilter;
  7. use Adianti\Database\TRepository;
  8. use Adianti\Validator\TCNPJValidator;
  9. use Adianti\Validator\TCPFValidator;
  10. class Functions {
  11.     public static function atrelarFatura($ID_CONTRATO)
  12.     {
  13.         try 
  14.         { 
  15.             TTransaction::open('america_gestao'); 
  16.             $criteria = new TCriteria
  17.             $criteria->add(new TFilter('ID_CONTRATO''='$ID_CONTRATO)); 
  18.             $repository = new TRepository('tb_contrato_fatura_budget'); 
  19.             $cfb $repository->load($criteria); 
  20.             TTransaction::close(); 
  21.             return $cfb;            
  22.         } 
  23.         catch (Exception $e
  24.         { 
  25.             new TMessage('error'$e->getMessage()); 
  26.         }
  27.     }
  28.     
  29. }
  30. ?>



Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (1)


NR

Adicione o código abaixo antes do "require_once" na classe Functions. A função chdir muda o diretório de referência do php.
  1. <?php
  2. chdir(__DIR__);
  3. ?>

Agora, pra entender melhor, qual a necessidade de chamar um arquivo externo por ajax? Não dá pra usar os recursos do framework?