При попытке частично закрыть производственные заказы мы получаем сообщение об ошибке "Ожидается транзакция". Эта ошибка чаще всего вызвана тем, что склад или финансовый пакет не был опубликован и, вероятно, находится в пакетном восстановлении (процедурах>>пакетном восстановлении), более необычным источником этой ошибки является сброшенный триггер. Что такое "сброшенный триггер"? - Производство закрывается частично или иным образом, записывает сведения о записи журнала в таблицу компании ICGL0102. После успешной публикации записи журнала строки производственного заказа (например, элементы списка выборки) в ICGL0102 удаляются. Если триггер G/L удален, эти строки никогда не удаляются и таблица продолжает увеличиваться. Сама проблема возникает при попытке завершить частично опубликованное производственное заказ с сообщением о ожидающей транзакции. При закрытии полного производственного заказа записи также покидают ICGL0102, но так как в заказе больше не происходят публикации, ошибка не возникает. На начальном этапе предлагается сравнить содержимое ICGL0102 с записями дневника, найденными на экране запроса записей журнала (Inquiry>>Financial>>Journal Entry), чтобы определить, опубликованы ли строки ICGL0102. Эти процедуры должен выполнять только DBA, и она должна быть единственным пользователем в системе (также с помощью телефонного набора). 1) SQL Server 7,0 Enterprise Manager (Start=>Programs=>Microsoft SQL Server 7.0=>Enterprise Manager) перейдите в часть базы данных (например, TWO). Сделайте резервные копии баз данных компании (например, ДВУХ) и DYNAMICS. В SQL Server щелкните базу данных правой кнопкой мыши и выберите &Все задачи,8 &Резервное копирование базы данных.8 2) В SQL Server Enterprise Диспетчере перейдите к базе данных организации (например, две), а затем перейдите в таблицы. 3) Найдите таблицу GL10001 и проверьте триггеры (выделите таблицу одним щелчком мыши, а затем щелкните правой кнопкой мыши, =>Все задачи=>Управление триггерами). В &Имя8 определите, существует ли триггер &ICGL_TRX_LINE_WORK_DELETE8 существует. Отсутствие триггера является причиной частичной проблемы закрытия производственного заказа. Если триггер присутствует, у вас другая проблема. 4) По возможности выполните поиск в других базах данных компании (например, TWO) и найдите триггер (выполните действия, представленные в элементе 3). Если вам не удается найти триггер, позвоните в службу технической поддержки, и мы по электронной почте предо предоставляем вам триггер. Выделив и скопируйте триггер в буфер. 5) Внимательно прочитать ) В Microsoft SQL Server 7.0 откройте анализатор запросов (в диспетчере Enterprise, Инструменты=>SQL Server Анализатор запросов). В &DB8 (базы данных) выберите базу данных организации, в которой отсутствует триггер &ICGL_TRX_LINE_WORK_DELETE8. В окне в конце триггера выполните сценарий (зеленая стрелка). 6) Рекомендуемые . Выход из eEnterprise, остановка и запуск сервера, повторное ввести eEnterprise и тестирование частичного производственного заказа закрывается в производственном заказе "СОЗДАТЬ". Старые частично размещенные производственные заказы по-прежнему будут демонстрировать ошибку. 7) Чтобы завершить имеющиеся частично заказа на производство, удалите относительные линии в таблице компании ICGL0102 (в Enterprise Диспетчер перейдите к базе данных компании, найдите таблицу ICGL0102, выделите таблицу одним щелчком мыши, а затем щелкните правой кнопкой мыши=>Открыть таблицу=>Вернуть все строки, выделите строки производственного заказа с помощью левого столбца и нажмите клавишу DELETE). Убедитесь, что вы удалили только строки опубликованных производственных заказов . Убедитесь, что на экране запроса, упомянутых выше, произошла определенная публикация.
Эта статья была посвящена ид.: 5738