Форум OlegON > Программы и оборудование для автоматизации торговли > Системы автоматизации торговли > Супермаг Плюс (Супермаг 2000)

отчет в Супермаг для сравнения наших цен и цен поставщиков в подтвержденных заказах : Супермаг Плюс (Супермаг 2000)

22.11.2024 7:38


12.03.2019 05:06
Добрый день

Только начинаю разбираться с Супермагом, поэтому прошу простить за вопросы новичка.

Необходимо создать новый отчет в Супермаг для сравнения наших цен и цен поставщиков в подтвержденных заказах.
Планируется использование генератора отчетов FastReport.

После некоторых манипуляций родился такой запрос:

SQL код:
SELECT li.FORM                                "ФОРМАТ",
         li.CLIENT_NAME                         "ПОСТАВЩИК",
         li.ARTICLE                             "АРТИКУЛ",
         (SELECT SMCARD.NAME
            FROM SMCARD
           WHERE SMCARD.ARTICLE = li.ARTICLE)   "НАИМЕНОВАНИЕ",
         li.ORDER_PRICE                         "НАША ЦЕНА",
         li.CLIENT_PRICE                        "ЦЕНА ПОСТ."
    FROM (SELECT oe.ARTICLE,
                 oe.ITEMPRICE
                     client_price,
                 SUPERMAG.SVSPECOR.ITEMPRICE
                     order_price,
                 (SELECT SMCLIENTINFO.NAME
                    FROM SUPERMAG.SMCLIENTINFO
                   WHERE SUPERMAG.SMCLIENTINFO.ID = oe.CLIENTINDEX)
                     client_name,
                 (SELECT SASTOREFORMATS.TITLE
                    FROM SMSTORELOCATIONS, SASTOREFORMATS
                   WHERE     SMSTORELOCATIONS.FORMATID = SASTOREFORMATS.ID
                         AND SMSTORELOCATIONS.ID = oe.LOCATION)
                     FORM
            FROM (SELECT *
                    FROM (SELECT ID,
                                 ORDERID,
                                 CREATEDAT,
                                 oe.LOCATION,
                                 oe.CLIENTINDEX
                            FROM SUPERMAG.SVDOCUMENTSOE oe
                           WHERE oe.CREATEDAT BETWEEN (SYSDATE-1)
                                                  AND (SYSDATE)) o,
                         SUPERMAG.SVSPECOE oe
                   WHERE o.ID = oe.DOCID) oe,
                 SUPERMAG.SVSPECOR
           WHERE     oe.ORDERID = SUPERMAG.SVSPECOR.DOCID
                 AND oe.ARTICLE = SUPERMAG.SVSPECOR.ARTICLE
                 AND oe.QUANTITY = SUPERMAG.SVSPECOR.QUANTITY
                 AND oe.ITEMPRICE <> SUPERMAG.SVSPECOR.ITEMPRICE) li
GROUP BY li.ARTICLE,
         li.CLIENT_NAME,
         li.FORM,
         li.ORDER_PRICE,
         li.CLIENT_PRICE
ORDER BY 1, 2, 4 
Данные возвращает вроде корректные, хотя и есть сомнения

В связи с этим возникло несколько вопросов:
1) Как привязать данный запрос к новому отчету (есть ли какая-то инструкция на эту тему)? Что делать дальше?
В идеале хотелось бы найти буквально пошаговое руководство по созданию и привязке отчетов.
2) Есть ли описание структуры БД? Очень много вопросов что и где хранится. Также остались сомнения в корректности данного запроса.
12.03.2019 13:28
1. C:\SM2000\rep_example\RepExample_ReadMe.doc - если при установке указано (точно не помню) "примеры пользовательских отчетов".
2. В документации СуперМага. См. наверху ссылку "Хранилище".
21.03.2019 01:21
Цитата:
DMaslov 1.
2. В документации СуперМага. См. наверху ссылку "Хранилище".
Увы и ах, но документация разраба (по структуре базы) кончается на 1.030... Или я опять что-то пропустил?
21.03.2019 06:47
А что не нашли в этой версии структуры?
21.03.2019 07:19
> кончается на 1.030

Существенно ничего не менялось, по мелочи допиливают. Когда-нить выпустят обновленное описание.
21.03.2019 08:26
Цитата:
ctarosta В идеале хотелось бы найти буквально пошаговое руководство по созданию и привязке отчетов.
С созданием нового отчета в Супермаг проблема. К сожалению так и не понял как к нему подступиться. Запрос есть, данные возвращает, но так и не понятно как его запихать в печатную форму :(

Может быть подскажете следующий шаг в этом направлении?
21.03.2019 08:35
Открываете первый попавшийся отчет из Супермага.
Сохраняете этот файл с другим именем.
Убираете вызов процедур, кроме RepTools.locString или RepTools.ClassString.
Заменяете в "String sSQL = SqlFormat()" текст запроса своим.
Меняете список полей в DataSourse
Меняете печатную форму

Дальше - создаете отчет в Супермаге, даете права на таблицы роли отчета и начинаете его отлаживать и дорабатывать...
21.03.2019 09:14
Вот как раз по поводу инструмента: я это могу все в fast report сделать? или нужен другой инструмент?
21.03.2019 09:31
FastReport.Designer.exe
Входит в поставку Супермаг+, находится в sm2000\bin
Инструкция по настройке перед использованием в SM2000\rep_example\RepExample_ReadMe.doc
Часовой пояс GMT +3, время: 07:38.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.