Удалить_от и удалить - PullRequest
0 голосов
/ 23 марта 2012

У меня есть настраиваемая таблица, в которой есть ссылка-прод-ссылка, которая ссылается на prodtable.

Мне нужно удалить запись таблицы Prod из этой записи таможенной таблицы.но когда я получаю доступ к таблице Prod и пытаюсь удалить ее, элемент управления просто выходит без выполнения операции

Я пытался использовать

    delete_from ProdTable where prodTable.prodid == 'abc';

также

    select prodtable where prodTable.prodid =='abc';
    prodTable.delete();

Может кто-нибудь сказать мне, почему это происходит

С уважением, TJ

Ответы [ 3 ]

4 голосов
/ 23 марта 2012

Прежде всего, я бы проверил, возвращает ли select нужную запись:

    select prodtable where prodtable .prodid =='abc';
    info(strFmt('ProdId: %1, RecId: %2', prodtable.ProdId, prodtable .RecId));

Примечание: вам нужно выбрать для обновления и быть в транзакции, чтобы иметь возможность удалить (должно генерировать ошибку, если не в транзакции или не используется forupdate)

    ttsbegin;
    select forupdate prodtable where prodtable .prodid =='abc';
    info(strFmt('ProdId: %1, RecId: %2', prodtable.ProdId, prodtable .RecId));
    prodtable.delete();
    ttscommit;

(при условии, что prodtable - настраиваемая таблица)

0 голосов
/ 25 марта 2012

управление просто выходит без выполнения операции

Вам нужно обновить форму после вызова метода удаления?

0 голосов
/ 23 марта 2012

Я предполагаю, что вы не использовали 'abc', но присоединились, используя поле из вашей настраиваемой таблицы.

Возможно, ProdId в настроенной таблице оставлено отрегулированным, но поле в ProdTable отрегулировано вправо?

Также вы проверили, вызывается ли prodTable.doDelete в методе класса ProdTableType.delete?

...