Uma tabela aberta internamente com colunas agregadas por relacionamento (ou Joined Columns) não deve deveria ser usada utilizada para inserção ou alteração de dados, apenas consulta. Sem uma proteção específica para estas condições, caso a aplicação AdvPL atribuísse qualquer conteúdo em uma coluna virtual, nas operações de inserção ou alteração, o
Inclusão de trecho |
---|
| DBAccess |
---|
| DBAccess |
---|
nopanel | true |
---|
|
submetia ao SGDB uma instrução que fatalmente não seria executada, pois referenciava colunas que não existem fisicamente (
virtual columns), retornando um erro
após enviar ao Banco de Dados a instrução de atualização.
Foi implementada uma melhoria na mensagem apresentada pelo no tratamento desta ocorrência, onde o
Inclusão de trecho |
---|
| dbaccess |
---|
| dbaccess |
---|
nopanel | true |
---|
|
gera uma mensagem de erro específica e diferenciada, que
passa a informar que a operação solicitada é inválida para a tabela em questão.As seguintes mensagens passam a ser observadas no console do Inclusão de trecho |
---|
dbaccess | dbaccess | nopanel | true |
informa explicitamente que não é possível realizar uma atribuição de valor em uma coluna virtual, antes de enviar a instrução ao Banco de Dados. Vide abaixo o exemplo das novas mensagens deste tratamento -- onde <X> indica o nome da coluna virtual envolvida na ocorrência:
Sem Formato |
---|
DB error (Insert): -27 File: MYTEST - TOP Error -27 - InvalidUnsupported VALUE InsertASSIGN on TableVIRTUAL withJOINED JOINEDCOLUMN Columns<X> ( From tISAMFile::WriteRecord )
DB error (Update): -29 File: MYTEST - TOP Error -29 - Unsupported InvalidVALUE UpdateASSIGN on TableVIRTUAL withJOINED JOINEDCOLUMN Columns<X> ( From tISAMFile::Update ) |