05.08.2005, 12:53 | #1 |
Moderator
|
Отчет 'Запасы в наличии'
День добрый!
Хочу иметь возможность печатать отчет 'Запасы в наличии' в разрезе склада (т.е. выводить все что есть на данном складе). Стандартный вариант, как я понял, с этой заачей не справляется -- если не указать код аналитики, печататется некорректно -- а этот вариант меня не устраивает. Отчет физ.наличие по складам не устраивает. |
|
05.08.2005, 13:05 | #2 |
Участник
|
Что-от я не понял, зашел в отчет, кнопуля Выбор, выбираю склад, печатаю - вот он.. что не так?
|
|
05.08.2005, 13:12 | #3 |
Moderator
|
А тепрь сравни результаты с теми которые выдаст отчет 'Физ Наличие по складам'!
У меня результаты совершенно разные и не в пользу Запасов в наличии. |
|
05.08.2005, 13:40 | #4 |
Axapta Retail User
|
если мне не изменяет память, то в этих двух отчетах производится различная выборка и биться между собой они и не должны...
если найду у себя материалы по этому вопросу (где-то должны быть), то выложу...
__________________
"Я не тиран. У меня просто выражение лица такое" Аугусто Пиночет |
|
05.08.2005, 14:08 | #5 |
Moderator
|
Запросы: (в начале SELECT и перечисление суммируемых полей)
1. В наличии (некорректен) PHP код:
PHP код:
С другой стороны, я не вижу ошибок в запросе 'В наличии' -- но результат некорректен! |
|
05.08.2005, 14:25 | #6 |
Дайвер
|
2DreamCreator: А что именно некорректно?
2 разных отчета, отображают разную информацию. Разнесенное количество, Получено и Физически зарезервировано есть в 2х отчетах. Для получения информации о наличии по конкретному складу можно воспользоваться запросом "В наличии" (Аксапта / Управление запасами / Запросы). Отобразить только нужный склад. При необходимости, распечатать. Либо доработать стандартный отчет. Какую информацию вы хотите получить в этом отчете? |
|
05.08.2005, 15:04 | #7 |
Moderator
|
Цитата:
Изначально опубликовано Yars
2DreamCreator: А что именно некорректно? Цитата:
2 разных отчета, отображают разную информацию.
Разнесенное количество, Получено и Физически зарезервировано есть в 2х отчетах. Цитата:
Для получения информации о наличии по конкретному складу можно воспользоваться запросом "В наличии" (Аксапта / Управление запасами / Запросы). Отобразить только нужный склад. При необходимости, распечатать.
Цитата:
Либо доработать стандартный отчет.
Цитата:
Какую информацию вы хотите получить в этом отчете?
|
|
05.08.2005, 15:56 | #8 |
Участник
|
Исользовать InventSum в Аксапте как-то "не по-пацански". Надо использовать InventTrans чтобы собрать остаки на дату + если нужна сумма в деньгах то надо использовать InventSettelment и смотреть коррекции себестоимости. Кроме того не надо забывать, что в InventTrans есть DatePhicical и DateFinancial и в зависимости от того что хочется получить.
Короче... надо строить свои отчеты Аксаптовские стандартные отчеты мало удобны для использования. Да и еще в зависимости от SP могут выдавать разную информацию (пример - оборот по складу в SP1 и SP3) |
|
05.08.2005, 16:28 | #9 |
Участник
|
Цитата:
Изначально опубликовано UNRW
Исользовать InventSum в Аксапте как-то "не по-пацански". Надо использовать InventTrans InventSum используется для того, чтобы минимизировать запросы к InventTrans. Если вы будете делать отчеты, которые обращаются только к InventTrans (как это сделали при локализации в русских отчетах), то очень быстро ваш отчет станет жутко тормозным поскольку будет суммировать проводки от начала времен. Разберитесь таки с InventSum, зачем он нужен и с обслуживающими классами. |
|
05.08.2005, 18:40 | #10 |
Участник
|
Согласен
Полностью поддерживаю Mazzy. Правильно рассчитывать остатки лучше с помощью классов наподобие InventSumDate*, которые остатки на дату считают через InventSum и куски InventTrans и InventSettlement.
А запрашивать весь InventSettlement с начала времен - это неправильный подход. Кстати, посмотрев отчеты, которые дописывали уже в российском MBS, я был в шоке. Ребята совершенно не пользуются стандартами международной версии.... |
|
05.08.2005, 18:43 | #11 |
Участник
|
Оборотку по складу писали в России. А местные разработки, как не жаль констатировать, зачастую менее качественны, чем международный слой.
|
|
05.08.2005, 19:32 | #12 |
Участник
|
Re: Согласен
Цитата:
Изначально опубликовано Axapta
Полностью поддерживаю Mazzy. Правильно рассчитывать остатки лучше с помощью классов наподобие InventSumDate*, которые остатки на дату считают через InventSum и куски InventTrans и InventSettlement. |
|
05.08.2005, 20:23 | #13 |
Участник
|
Re: Re: Согласен
Цитата:
Изначально опубликовано dn
Сам подход с точки зрения теории - верный, только не стоит в отчетах тупо использовать классы InventSumDate*. Для одной номенклатуры они отработают звёздно, но гнать их в цикле по номенклатуре не стоит... |
|
08.08.2005, 12:34 | #14 |
Участник
|
Re: Re: Согласен
Цитата:
Изначально опубликовано dn
Сам подход с точки зрения теории - верный, только не стоит в отчетах тупо использовать классы InventSumDate*. Для одной номенклатуры они отработают звёздно, но гнать их в цикле по номенклатуре не стоит... |
|
08.08.2005, 13:01 | #15 |
Участник
|
Re: Re: Re: Согласен
Цитата:
Изначально опубликовано Axapta
А почему бы и не "гнать"? 2 mazzy Извини, не понял про "групповую обработку номенклатуры". Вроде бы речь шла о получении остатков на дату в разрезе определенных складских аналитик... |
|
08.08.2005, 16:20 | #16 |
Участник
|
Re: Re: Re: Re: Согласен
[QUOTE]Изначально опубликовано dn
[B] По-времени как-то тоскливо получается, на этом фоне оптимизированный запрос "с начала времен" уже не кажется таким ужастным... Один запрос (даже оптимизированный) не всегда работает быстрее, чем много мелких.... =) Ну у меня есть практический пример - 70000 номенклатур, 15млн складских проводок, 40млн складских сопоставлений, система эксплуатируется 2 года, СУБД - SQL. Остатки на дату по всему ассортименту с помощью стандартного отчета - 10 мин., через InventTrans даже без группировки по складской аналитике - в разы дольше (+ большие чтения с диска из-за глобальной выборки, что приводит к более медленной работе как этой сессии, так и других пользователей). |
|
08.08.2005, 17:17 | #17 |
Участник
|
У отчета по InventTrans с "начала времен" есть еще один недостаток.
"Начало времен" - это этап внедрения AXAPTA. Перевод данных из старых программ и хранилищь в новые. Т.е. это время такого "бардака", что и не сразу опишешь. Как следствие, нет никакой гарантии, что данные "начала времен" достаточно корректны. Есть очень большой шанс, что InventSum в "начале времен" было заполнено не по фактическим значениям InventTrans, а по результату инвентаризации. Т.е. расчет по InventTrans "с начала времен" будет отличаться от того, что храниться в InventSum. |
|
08.08.2005, 17:57 | #18 |
Участник
|
Цитата:
Изначально опубликовано Владимир Максимов
Есть очень большой шанс, что InventSum в "начале времен" было заполнено не по фактическим значениям InventTrans, а по результату инвентаризации. inventSum - сугубо служебная таблица. ее нельзя править, поскольку эта таблица пересчитывается автоматически http://forum.mazzy.ru/index.php?showtopic=3419 Данные можно вводить только проводками + коррекция себестоимости. |
|
08.08.2005, 18:27 | #19 |
Участник
|
Re: Re: Re: Re: Re: Согласен
Цитата:
Изначально опубликовано Axapta
Один запрос (даже оптимизированный) не всегда работает быстрее, чем много мелких.... =) Ну у меня есть практический пример - 70000 номенклатур, 15млн складских проводок, 40млн складских сопоставлений, система эксплуатируется 2 года, СУБД - SQL. |
|
08.08.2005, 18:37 | #20 |
Участник
|
Re: Re: Re: Re: Re: Согласен
[QUOTE]Изначально опубликовано Axapta
[B] Цитата:
Изначально опубликовано dn
Ну у меня есть практический пример - 70000 номенклатур, 15млн складских проводок, 40млн складских сопоставлений, система эксплуатируется 2 года, СУБД - SQL. |
|