Bom dia Colegas,
A questão de alguns meses assumimos um projeto em cima do DataSul.
Acreditávamos que o SC seria a melhor solução para o desenvolvimento rápido, mas infelizmente não é o que vem acontecendo.
Aqueles que conhecem o banco de dados PROGRESS, devem saber que o mesmo trabalha com travamento de tabelas e para que não ocorra esse travamento temos que adicionar a cláusula WITH (NOLOCK) nos selects, caso contrário DEAD LOCK na certa.
Mas o scriptcase não aceita a cláusula nas consultas, e não as coloca automáticamente nos selects dos formularios. Quanto aos formulários acabamos desenvolvendo através de aplicações de controles (tudo na unha) mas as consultas que tormento.
A razão do erro é porque a NM adiciona a palavra “asc” internamente ao select principal da consulta, essa palavra sempre é adicionada quando existe a cláusla ORDER BY.
ERRO
Erro ao acessar o banco de dados
[DataDirect][ODBC Progress OpenEdge Wire Protocol driver][OPENEDGE]Syntax error in SQL statement at or about “WITH (NOLOCK) asc” (10713)
SelectLimit(SELECT “descr-original” as sc_field_1, “part-number” as sc_field_0, “it-codigo” as sc_field_2 from PUB. “part-number” order by “descr-original” asc WITH (NOLOCK) asc, 17, 0)
Sugestão: Não usem o SC com PROGRES.