Boa tarde.
Estou em um cliente fazendo migração de um projeto da V4 para V7 e tive problemas com algumas aplicações. Ao executar a consulta, o sistema apresenta o erro abaixo:
ERRO
Erro ao acessar o banco de dados
[Microsoft][ODBC SQL Server Driver][SQL Server]The multi-part identifier “apt2.Plaiteproc” could not be bound.
select count(*) from (select DISTINCT apt2.aptmaqcod AS MAQUINA , CONVERT(DATE,apt2.aptdata) AS DIA , apt2.Plaiteproc AS PRODUTO from widl.APT1002 apt2 JOIN widl.APT100B aptB ON apt2.Planro = aptB.Planro AND apt2.Plaiteproc = aptB.Plaiteproc AND apt2.Plaitemaq = aptB.Plaitemaq AND apt2.Plaprcseq = aptB.Plaprcseq AND apt2.Aptsequenc = aptB.Aptsequenc group by apt2.aptmaqcod, CONVERT(DATE,apt2.aptdata),apt2.Plaiteproc) nm_sel_esp group by apt2.aptmaqcod, CONVERT(DATE,apt2.aptdata),apt2.Plaiteproc
Mexi em tudo o q podia para tentar resolver o problema e a única coisa que resolveu foi refazer a aplicação do zero.
Porém tenho 2 aplicações com esse problema que nem refazendo a aplicação resolveu!
Então gerei a aplicação e editei o arquivo aplicacao_total.class.php e alterei a ultima linha desse bloco:
if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
{
$nm_comando = “select count() from (" . $nm_comando . ") nm_sel_esp ";
}
else
{
$nm_comando = "select count() from (” . $nm_comando . ") nm_sel_esp “;
}
$nm_comando .= " group by MAQUINA, CONVERT(DATE,DIA)”;
Com isso a aplicação funcionou, mas se eu gerar novamente a aplicação as alterações que fiz serão sobrescritas, gerando novamente o problema.
Preciso de uma ajuda para solucionar esse problema, pois sem isso não conseguirei fechar o projeto de migração.
Grato
Marcio