AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.12.2010, 10:37   #1  
maxkov is offline
maxkov
Участник
 
77 / 11 (1) +
Регистрация: 09.09.2005
? При суммарной обработке закупок аксапта удаляет строки разноски счета и накладной
Какой-то очередной странный глюк.

Настроил параметрах поставщиков суммарную обработку "счет на".

Теперь при обработке счета одного заказа под некоторыми пользователями после нажатия кнопкп ОК в диалоге разноски, строки для разноски система удаляет.

Под другими пользователями все работает.

Разработчик не может понять причину, посокльку глюк в ядре. Система вызывает какой-то метод делит, котрый должен выполняться при определенных условиях. Набор этих условий ложный, но ядро все равно удаляет записи ПОД НЕКОТОРЫМИ ПОЛЬЗОВАТЕЛЯМИ.

Кто нибудь сталкивался с подобным бредом?
Старый 09.12.2010, 10:41   #2  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Хотя бы версию системы укажите..
__________________
Ivanhoe as is..
Старый 09.12.2010, 10:46   #3  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
сброс пользовательских настроек делали?
кэшевские файлы АОС удаляли на машине пользователя?
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 09.12.2010, 10:54   #4  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
Цитата:
Сообщение от maxkov Посмотреть сообщение
Какой-то очередной странный глюк.
.... но ядро все равно удаляет записи ПОД НЕКОТОРЫМИ ПОЛЬЗОВАТЕЛЯМИ.
Кто нибудь сталкивался с подобным бредом?
Пользователи в разных группах? Права пользователей одинаковы?
В коде не дописан код который в зависимости от группы, что то чистит?

почему вы решили, что проблема с ядром?
Данный глюк воспроизводится на разработческой и тестовой аксапте?
__________________

This posting is provided "AS IS" with no warranties, and confers no rights.
Старый 09.12.2010, 11:13   #5  
maxkov is offline
maxkov
Участник
 
77 / 11 (1) +
Регистрация: 09.09.2005
версия 4ка
все сбрасывал у удалял ауцшки
наборы прав разные но в целом у одного пользователя с админскими правами так происходит а у другого нет - дело вообще не в правах.
База естетственно с разработками, но отрабатывает стандартный код в данном случае.
Старый 09.12.2010, 11:27   #6  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
если я правильно понял проблему, то у Вас удаляется таблица SalesParmLine.
что бы понять в какой момент и по какой причине она удаляется поставьте в методе delete() этой таблицы точку останова (если этого метода нет, перекройте его) и запустите процесс обработки. Если удаление происходит не через doDelete(), то у вас откроется отладчик и в нем вы сможете посмотреть стек вызова. Думаю что просмотр стека расставит все по своим местам.
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
За это сообщение автора поблагодарили: S.Kuskov (1).
Старый 09.12.2010, 11:28   #7  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,438 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от maxkov Посмотреть сообщение
Разработчик не может понять причину, посокльку глюк в ядре. Система вызывает какой-то метод делит, котрый должен выполняться при определенных условиях. Набор этих условий ложный, но ядро все равно удаляет записи ПОД НЕКОТОРЫМИ ПОЛЬЗОВАТЕЛЯМИ.
Вариантов два: либо запись удаляется ещё из какого-то места (выяснить просто - необходимо поставить точку останова внутрь метода delete и проанализировать стек вызовов), либо в момент выполнения условие всё-таки не ложно. Как бы не абсурдно это выглядело, но отображаемый код и исполняемый могут отличаться из-за сбоев кэша. И опять же из отладчика всё это можно увидеть.
Старый 09.12.2010, 11:45   #8  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
кстати, что то подумалось, а АОСы перезапускали?
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 09.12.2010, 12:05   #9  
maxkov is offline
maxkov
Участник
 
77 / 11 (1) +
Регистрация: 09.09.2005
в делите нет ничего, там по релэйшену удаляется
и аос перезапускали

Короче при попытке удалить в SalesParmTable система удаляет в SalesParmSubTable, несмотря на то что условие релэйшена по полю TableRefId не выполняется

Причем сгенерили даже не путем запуска процедура а тупо на таблице сделали удаление и все равно система удалила не смотря на условие релэйшена (НО ТОЛЬКО ПОД ОПРЕДЕЛННЫМИ ПОЛЬЗОВАПТЕЛЯМИ - у этих пользователей нет ограничей по правам - они в группе админ)

Последний раз редактировалось maxkov; 09.12.2010 в 12:12.
Старый 09.12.2010, 12:18   #10  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от maxkov Посмотреть сообщение
в делите нет ничего, там по релэйшену удаляется
и аос перезапускали

Короче при попытке удалить в SalesParmTable система удаляет в SalesParmSubTable, несмотря на то что условие релэйшена по полю TableRefId не выполняется

Причем сгенерили даже не путем запуска процедура а тупо на таблице сделали удаление и все равно система удалила не смотря на условие релэйшена (НО ТОЛЬКО ПОД ОПРЕДЕЛННЫМИ ПОЛЬЗОВАПТЕЛЯМИ - у этих пользователей нет ограничей по правам - они в группе админ)
эээ, у меня Relation на таблице SalesParmSubTable с таблицей SalesParmTable сделан через поля ParmId и SalesId. Таблица эта у нас стандартная (правда у нас третья аксапта, возможно в четвертой переделали).

а вообще чудес не бывает, если удаляется, значит условие отрабатывает.
у тех пользователей, у которых не удаляется, скорее всего настроен доступ на уровне записей, проверьте все ещё раз внимательней.
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 09.12.2010, 12:28   #11  
maxkov is offline
maxkov
Участник
 
77 / 11 (1) +
Регистрация: 09.09.2005
Доступ совсем нипричем. если бы условие выполняось то под всеми бы оно отрабатывало
Старый 09.12.2010, 18:11   #12  
maxkov is offline
maxkov
Участник
 
77 / 11 (1) +
Регистрация: 09.09.2005
Разобрались
Действительно глюк с правами.
Несколько групп прав пришлось убить и настроить новые аналогичные - тогда все заработало.
Старый 09.12.2010, 19:02   #13  
Wamr is offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1,737 / 858 (32) +++++++
Регистрация: 15.01.2002
Адрес: Москва
Записей в блоге: 7
На мой взгляд, это ошибка, что deleteAction зависит от настройки прав.
Ладно бы оно полностью работало или не работало, а то ведь удаляет не то что надо.
Старый 14.12.2012, 16:31   #14  
mayk is offline
mayk
Участник
Аватар для mayk
 
43 / 65 (3) ++++
Регистрация: 07.03.2008
Цитата:
Сообщение от maxkov Посмотреть сообщение
в делите нет ничего, там по релэйшену удаляется
и аос перезапускали

Короче при попытке удалить в SalesParmTable система удаляет в SalesParmSubTable, несмотря на то что условие релэйшена по полю TableRefId не выполняется

Причем сгенерили даже не путем запуска процедура а тупо на таблице сделали удаление и все равно система удалила не смотря на условие релэйшена (НО ТОЛЬКО ПОД ОПРЕДЕЛННЫМИ ПОЛЬЗОВАПТЕЛЯМИ - у этих пользователей нет ограничей по правам - они в группе админ)
Бамп старинному треду. Может ещё кто столкнется. Я вот столкнулся, а на форуме решения не нашлось.

Оказывается, в четверке при удалении relation'ы по невидимым полям не используются, поэтому когда reArrange удаляет parm таблицы, он иногда грохает все parmLine с такими же parmId не смотря на то то tableRefId в них отличается от TableRefId в ParmTable. Axapta делает это не всегда, а только для пользователей которые ей особенно не нравятся. И права тут не причем.

Для обхода надо выставить visible=yes в tableRefId, тогда AX нормально воспринимает table relation и не удаляет что попало.

(узнал в http://www.archivum.info/microsoft.p...invoicing.html )

Цитата:
Сообщение от lev Посмотреть сообщение
а вообще чудес не бывает, если удаляется, значит условие отрабатывает.
Чудеса всё-таки бывают о чем можно убедится добавив delete() методы в PurchParmTable, purchParmLine и сравнив tableRefId, но конкретно это закончилось в KB939982

Ключевые слова для гугла: purchParmLine, PurchParmSubTable, purchParmTable, tableRefId, parmId, deleteAction.

Последний раз редактировалось mayk; 14.12.2012 в 16:42.
За это сообщение автора поблагодарили: S.Kuskov (2), Player1 (5).
Старый 14.12.2012, 16:54   #15  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от mayk Посмотреть сообщение
Чудеса всё-таки бывают о чем можно убедится добавив delete() методы в PurchParmTable, purchParmLine и сравнив tableRefId, но конкретно это закончилось в KB939982

Ключевые слова для гугла: purchParmLine, PurchParmSubTable, purchParmTable, tableRefId, parmId, deleteAction.
это не чудеса, а кривизна рук создателей системы особенности системы...
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 14.12.2012, 17:27   #16  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Цитата:
Сообщение от lev Посмотреть сообщение
это не чудеса, а кривизна рук создателей системы
А откуда еще чудеса берутся?
__________________
Axapta v.3.0 sp5 kr2
Теги
salesparmsubtable, salesparmtable, баг

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
По каким счетам формируются проводки в ГК при обработке накладной? matew DAX: Программирование 1 12.10.2007 13:30
По каким счетам формируются проводки в ГК при обработке накладной? matew DAX: Функционал 5 11.10.2007 17:50
Корреспонденция строки накладной? AlexArh DAX: Программирование 3 14.06.2006 14:37
При обработке накладной пропадают налоги Filip DAX: Функционал 21 21.03.2005 11:19
разноска счета на оплату после разноски накладной OlegKocherga DAX: Функционал 14 12.03.2004 17:48

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 08:51.