View previous topic :: View next topic |
Author |
Message |
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 14 Sep 2007 14:58 Post subject: УРОК ! Пример пошагового решения по адаптации отчета в Б5 |
|
|
Задача:
Сделать в товарном отчете рядом с колонкой суммы по розничной цене колонку с суммой по учетной цене из карточки партий.
Просьба рассмотреть возможность пошагового решения
Last edited by nordk on 18 Sep 2007 11:53; edited 1 time in total |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 17 Sep 2007 09:46 Post subject: |
|
|
Добрый день!
1. Настроить вывод полей карточки партии в источнике данных В зависимости от того в каком разделе отчета Вам необходимо выводить данное поле такую настройку необходимо сделать для источника DataSet1 (А. Движение готовой продукции и товаров) или DataSet3 (Ведомость движения готовой продукции и товаров). Выполняется она следующим образом:1. Переходите на карточку запроса отчета и и устанавливаете курсор на нужный источник.
2. С помощью свойства Params выводите список параметров источника
3. Для параметра lPartia значение True
2. Вывести поле в отчетеПосле настройки источника необходимо вевести поле CENA_F в отчет _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 17 Sep 2007 12:36 Post subject: |
|
|
Речь идет о товарном отчете конкретно.
БЭСТ-5 магазин
Торговый зал\отчеты\реестр токументов\товарный отчет( ф.Торг 29)
В отчете колонка 4. Сумма товара.
Надо: сумма товара и сумма товра себестоимость (добавить колонку
по себестоимости)
Сейчас в отчете:
CHILD формула - просьба пояснить
MASTER
DATA
формула
Code: | [If(nValuta=0,[DialogForm.DataSet1."RPS"]-[DialogForm.DataSet1."RPST"],[DialogForm.DataSet1."SUM"]-[DialogForm.DataSet1."SUMTARA"])] |
Если я правильно понимаю в DataSet1 есть и себестоимость
просьба подсказать поля (особенно себестоимость тары) |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 17 Sep 2007 13:36 Post subject: |
|
|
Добрый день!
nordk wrote: | Речь идет о товарном отчете конкретно.
БЭСТ-5 магазин
Торговый зал\отчеты\реестр токументов\товарный отчет( ф.Торг 29) | В предыдущем сооббщении речь шла о товарно отчете (как и было Вами написано).
nordk wrote: | В отчете колонка 4. Сумма товара.
Надо: сумма товара и сумма товра себестоимость (добавить колонку
по себестоимости)
Сейчас в отчете:
CHILD формула - просьба пояснить
| Переменная sostk и stara расчитываются в коде кнопки "Выполнить", как остатки на складе в тех ценах которые указал пользователь (учетные или по прайс-листу). В строках документа выводятся данные по документу по указанной Вами формуле.
nordk wrote: | MASTER DATA
формула
Code: | [If(nValuta=0,[DialogForm.DataSet1."RPS"]-[DialogForm.DataSet1."RPST"],[DialogForm.DataSet1."SUM"]-[DialogForm.DataSet1."SUMTARA"])] |
Если я правильно понимаю в DataSet1 есть и себестоимость
просьба подсказать поля (особенно себестоимость тары) |
Все верно. Поля DialogForm.DataSet1."RPS" и DialogForm.DataSet1."RPSТ" - сумма по документу в ценах прайс-листа за товар и по таре. А поля: DialogForm.DataSet1."SUM" и DialogForm.DataSet1."SUMTARA" - в учетных ценах. _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 17 Sep 2007 13:45 Post subject: |
|
|
Виноват не правильно поставил вопрос
Все правильно у нас есть либо в розничных ценах либо в учетных.
Меня просят сделать еще разрез в ценах поставщика (из карточки партии)
В том отчете, который строит по учетным цена |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 17 Sep 2007 13:58 Post subject: |
|
|
Итак в продложение вопроса:
1. у нас по каждой строке отчета выводятся данные либо в
продажных ценах либо в учетных, поскольку такая информация
содержится в заголовке документа.
В заголовке документов ( в частности расхода) отдельного поля
в ценах поставщика нет.
2.Стало быть по каждой накладной, вошедшей в Товарный отчет
по всем строкам есть необходимость просуммировать mdocm->KOL*
spr_part->CENA_P и эту сумму отразить по строке данного отчета.
Возможно существует какой-нибудь готовый источник и будет ли
он работать в данном отчете ?
3. В свете того, что в отчете разделяют сумму товара от суммы тары,
то и в нашем случае это необходимо учесть.
Как подойти к решению такого вопроса ? |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 18 Sep 2007 10:17 Post subject: |
|
|
Добрый день!
nordk wrote: | 1. у нас по каждой строке отчета выводятся данные либо в продажных ценах либо в учетных, поскольку такая информация содержится в заголовке документа. В заголовке документов ( в частности расхода) отдельного поля
в ценах поставщика нет.
2.Стало быть по каждой накладной, вошедшей в Товарный отчет по всем строкам есть необходимость просуммировать mdocm->KOL*spr_part->CENA_P и эту сумму отразить по строке данного отчета. Возможно существует какой-нибудь готовый источник и будет ли он работать в данном отчете ? | Используемый в отчете источник выводит все поля карточки партий, но только по запросу. Для этого необходимо установить Значение для параметра lPartia значение True. Как это сделать я писал выше в данной теме.
nordk wrote: | 3. В свете того, что в отчете разделяют сумму товара от суммы тары, то и в нашем случае это необходимо учесть. Как подойти к решению такого вопроса ? | Проблема в решении данного вопроса заключается не в источнике, а в самом отчете. Дело в том что данные по отчету группируются по каждому документу, и эта группировка производится в источнике. Для решения Вашей задачи этот вариант не подойдет. Необходимо отказатся от группировки данных в отчете и сгруппировать их в самом отчете. Порядок решения следующий:
1. В коде кнопки выполнить есть строка, в которой задается группировка записей в источнике
Code: | DataSet1.Params['cGruping'] := 'VID+DTOC(DATE,1)+TYPE+CD+ND+SCLAD'; | Эту строку необходимо удалить или закомментировать.
2. Необходимо создать группировку записей в отчете по виду докуметов:
2.1. Выложить перед секцией MasterData секцию GrupHeader. Задать условие группировки записей в отчете по полям: VID, DATE, TYPE, CD, ND, SCLAD источника. Установить свойство Visible для этой секции в значение False.
2.2. Выложить после секции MasterData секцию GrupFooter. В данной секции и будут выводится строки отчета.
3. Перенести объекты с выводимой информацией с секции MasteData на секцию GrupFooter. Здесь необходимо учесть, что в числовых полях формула расчета должна быть изменена на
Для секции MasterData необходимо установить для свойства Height значение 0, что бы данная секция не выводилась в отчет, но участвовала в расчетах.
После этого Вы имеете возможность выложить на секции GrupFooter обьект с формулой:
Code: | [SUM(DialogForm.DataSet1."KOL"*DialogForm.DataSet1."CENA_P")] | В котором необходимое значение будет посчитанно. _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
|