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

Вопросы по СМ-Максимизатору : Другие вопросы

19.04.2024 22:31


01.10.2009 09:53
TrantiMoller
 
Цитата:
mighty ...
попорбуйте создать эту вьюшку..заработают наценки?
Неа, не заработали, та же ошибка.
Может быть это из-за того что у меня нет синхронизатора?
У меня вообще он не установлен или для версии максимизатора 1.9.3 он вообще не нужен?
01.10.2009 11:28
TrantiMoller
 
Кажется нашел!
Просмотрел все созданные вьюхи в БД:
в MAXIMIZATOR - все создались (и пакеты и вьюхи),
а вот в SUPERMAG - нет вьюх
- MVCARDASSORTMANAGER
- MVCARDASSORTMANAGER_TEST
- MVCARDCLASSEXTRACHAGE

Получаеться след. часть скрипта не выполнилась:
Код:
...

CREATE OR REPLACE VIEW SUPERMAG.MVCARDASSORTMANAGER
(
    ARTICLE,
    TREE,
    PARENT_TREE,
    OWNER,
    INFO
)
AS
select c.article, d.tree, SUBSTR(d.tree,1,INSTR(d.tree,'.')) parent_tree,
       case when (
                   d.tree like '1.%' or
                   d.tree like '11.%' or
                   d.tree like '10.%'
                  )
            then 'Менеджер № 1'
            when ((
                   d.tree like '29.%' or
                   d.tree like '15.%' or
                   d.tree like '35.%' or
                   d.tree like '7.%' or
                   d.tree like '27.%'
                   ) and (not d.tree like '27.31.1%')
                     and (not d.tree like '7.8.%')
                  )
            then 'Менеджер № 2'
            when ((
                   d.tree like '8.%' or
                   d.tree like '50.%' or
                   d.tree like '3.%' or
                   d.tree like '41.%' or
                   d.tree like '12.%'
                   ) and (not d.tree like '12.6.%')
                     and (not d.tree like '12.7.%')
                   )
            then 'Менеджер № 3'
            when (
                   d.tree like '22.%' or
                   d.tree like '21.%' or
                   d.tree like '31.%' or
                   d.tree like '39.%' or
                   d.tree like '28.%'
                  )
            then 'Менеджер № 4'
            when (
                   d.tree like '5.%' or
                   d.tree like '16.%' or
                   d.tree like '12.6.%' or
                   d.tree like '12.7.%' or
                   d.tree like '20.%' or
                   d.tree like '27.31.1.%' or
                   d.tree like '44.%' or
                   d.tree like '47.%'
                   )
            then 'Менеджер № 5'
            when (
                   d.tree like '19.%' or
                   d.tree like '46.%' or
                   d.tree like '45.%' or
                   d.tree like '2.%' or
                   d.tree like '40.%' or
                   d.tree like '33.%'
                   )
            then 'Менеджер № 6'
            when (
                   d.tree like '32.%' or
                   d.tree like '37.%' or
                   d.tree like '34.%' or
                   d.tree like '30.%'
                  )
            then 'Менеджер № 7'
            when (
                   d.tree like '4.%' or
                   d.tree like '7.8.%' or
                   d.tree like '18.%' or
                   d.tree like '49.%' or
                   d.tree like '9.%'
                   )
            then 'Менеджер № 8'
            else 'Прочие товары' end owner,

       case when (
                   d.tree like '1.%' or
                   d.tree like '11.%' or
                   d.tree like '10.%'
                  )
            then  'Группы 1.,11.,10.'
            when ((
                   d.tree like '29.%' or
                   d.tree like '15.%' or
                   d.tree like '35.%' or
                   d.tree like '7.%' or
                   d.tree like '27.%'
                   ) and (not d.tree like '27.31.1.%')
                     and (not d.tree like '7.8.%')
                   )
            then 'Группы 29.,15.,35.,7.,27. кроме 27.31.1. и 7.8.'
            when ((
                   d.tree like '8.%' or
                   d.tree like '50.%' or
                   d.tree like '3.%' or
                   d.tree like '41.%' or
                   d.tree like '12.%'
                   ) and (not d.tree like '12.6.%')
                     and (not d.tree like '12.7.%')
                   )
            then 'Группы 8.,50.,3.,41.,12., кроме 12.6. и 12.7'
            when (
                   d.tree like '22.%' or
                   d.tree like '21.%' or
                   d.tree like '31.%' or
                   d.tree like '39.%' or
                   d.tree like '28.%'
                  )
            then 'Группы 22.,21.,31.,39.,28.'
            when (
                   d.tree like '5.%' or
                   d.tree like '16.%' or
                   d.tree like '12.6.%' or
                   d.tree like '12.7.%' or
                   d.tree like '20.%' or
                   d.tree like '27.31.1.%' or
                   d.tree like '44.%' or
                   d.tree like '47.%'
                   )
            then 'Группы 5.,16,12.6.,12.7.,20.,27.31.1,44.,47.'
            when (
                   d.tree like '19.%' or
                   d.tree like '46.%' or
                   d.tree like '45.%' or
                   d.tree like '2.%' or
                   d.tree like '40.%' or
                   d.tree like '33.%'
                   )
            then 'Группы 19.,46.,45.,2.,40.,33.'
            when (
                   d.tree like '32.%' or
                   d.tree like '37.%' or
                   d.tree like '34.%' or
                   d.tree like '30.%'
                  )
            then 'Группы 32.,37.,34.,30.'
            when (
                   d.tree like '4.%' or
                   d.tree like '7.8.%' or
                   d.tree like '18.%' or
                   d.tree like '49.%' or
                   d.tree like '9.%'
                   )
            then 'Группы 4.,7.8.,18.,49.,9.'
            else 'Прочие группы' end info

from supermag.smcard c,supermag.sacardclass d
where d.id=c.idclass
/
CREATE OR REPLACE VIEW SUPERMAG.MVCARDASSORTMANAGER_TEST
(
    ARTICLE,
    TREE,
    PARENT_TREE,
    OWNER,
    INFO
)
AS
select c.article, d.tree, SUBSTR(d.tree,1,INSTR(d.tree,'.')) parent_tree,
       case when (
                   d.tree like '1.%' or
                   d.tree like '11.%' or
                   d.tree like '10.%'
                  )
            then 'Менеджер № 1'
            when ((
                   d.tree like '29.%' or
                   d.tree like '15.%' or
                   d.tree like '35.%' or
                   d.tree like '7.%' or
                   d.tree like '27.%'
                   ) and (not d.tree like '27.31.1%')
                     and (not d.tree like '7.8.%')
                  )
            then 'Менеджер № 2'
            when ((
                   d.tree like '8.%' or
                   d.tree like '50.%' or
                   d.tree like '3.%' or
                   d.tree like '41.%' or
                   d.tree like '12.%'
                   ) and (not d.tree like '12.6.%')
                     and (not d.tree like '12.7.%')
                   )
            then 'Менеджер № 3'
            when (
                   d.tree like '22.%' or
                   d.tree like '21.%' or
                   d.tree like '31.%' or
                   d.tree like '39.%' or
                   d.tree like '28.%'
                  )
            then 'Менеджер № 4'
            when (
                   d.tree like '5.%' or
                   d.tree like '16.%' or
                   d.tree like '12.6.%' or
                   d.tree like '12.7.%' or
                   d.tree like '20.%' or
                   d.tree like '27.31.1.%' or
                   d.tree like '44.%' or
                   d.tree like '47.%'
                   )
            then 'Менеджер № 5'
            when (
                   d.tree like '19.%' or
                   d.tree like '46.%' or
                   d.tree like '45.%' or
                   d.tree like '2.%' or
                   d.tree like '40.%' or
                   d.tree like '33.%'
                   )
            then 'Менеджер № 6'
            when (
                   d.tree like '32.%' or
                   d.tree like '37.%' or
                   d.tree like '34.%' or
                   d.tree like '30.%'
                  )
            then 'Менеджер № 7'
            when (
                   d.tree like '4.%' or
                   d.tree like '7.8.%' or
                   d.tree like '18.%' or
                   d.tree like '49.%' or
                   d.tree like '9.%'
                   )
            then 'Менеджер № 8'
            else 'Прочие товары' end owner,

       case when (
                   d.tree like '1.%' or
                   d.tree like '11.%' or
                   d.tree like '10.%'
                  )
            then  'Группы 1.,11.,10.'
            when ((
                   d.tree like '29.%' or
                   d.tree like '15.%' or
                   d.tree like '35.%' or
                   d.tree like '7.%' or
                   d.tree like '27.%'
                   ) and (not d.tree like '27.31.1.%')
                     and (not d.tree like '7.8.%')
                   )
            then 'Группы 29.,15.,35.,7.,27. кроме 27.31.1. и 7.8.'
            when ((
                   d.tree like '8.%' or
                   d.tree like '50.%' or
                   d.tree like '3.%' or
                   d.tree like '41.%' or
                   d.tree like '12.%'
                   ) and (not d.tree like '12.6.%')
                     and (not d.tree like '12.7.%')
                   )
            then 'Группы 8.,50.,3.,41.,12., кроме 12.6. и 12.7'
            when (
                   d.tree like '22.%' or
                   d.tree like '21.%' or
                   d.tree like '31.%' or
                   d.tree like '39.%' or
                   d.tree like '28.%'
                  )
            then 'Группы 22.,21.,31.,39.,28.'
            when (
                   d.tree like '5.%' or
                   d.tree like '16.%' or
                   d.tree like '12.6.%' or
                   d.tree like '12.7.%' or
                   d.tree like '20.%' or
                   d.tree like '27.31.1.%' or
                   d.tree like '44.%' or
                   d.tree like '47.%'
                   )
            then 'Группы 5.,16,12.6.,12.7.,20.,27.31.1,44.,47.'
            when (
                   d.tree like '19.%' or
                   d.tree like '46.%' or
                   d.tree like '45.%' or
                   d.tree like '2.%' or
                   d.tree like '40.%' or
                   d.tree like '33.%'
                   )
            then 'Группы 19.,46.,45.,2.,40.,33.'
            when (
                   d.tree like '32.%' or
                   d.tree like '37.%' or
                   d.tree like '34.%' or
                   d.tree like '30.%'
                  )
            then 'Группы 32.,37.,34.,30.'
            when (
                   d.tree like '4.%' or
                   d.tree like '7.8.%' or
                   d.tree like '18.%' or
                   d.tree like '49.%' or
                   d.tree like '9.%'
                   )
            then 'Группы 4.,7.8.,18.,49.,9.'
            else 'Прочие группы' end info

from supermag.smcard c,supermag.sacardclass d
where d.id=c.idclass
/
CREATE OR REPLACE VIEW SUPERMAG.MVCARDCLASSEXTRACHAGE
(
    ID,
    TREE,
    PRICETYPE,
    PRICENAME,
    EXTRACHARGE
)
AS
select t.id,t.tree,t.pricetype,t.pricename,
nvl(m6.extracharge,nvl(m5.extracharge,nvl(m4.extracharge,nvl(m3.extracharge,nvl(m2.extracharge,nvl(m1.extracharge,m.extracharge)))))) extracharge

from
(
select  d.id,
        d.tree,
        p.id pricetype,
        p.name pricename,
        0 id_parent,
        d1.id id_parent1,
        d2.id id_parent2,
        d3.id id_parent3,
        d4.id id_parent4,
        d5.id id_parent5,
        d6.id id_parent6

from
SUPERMAG.Svcardtreesplit D,
SUPERMAG.Sacardclass D1,
SUPERMAG.Sacardclass D2,
SUPERMAG.Sacardclass D3,
SUPERMAG.Sacardclass D4,
SUPERMAG.Sacardclass D5,
SUPERMAG.Sacardclass D6,
SUPERMAG.SMPRICETYPES P
where
      d1.tree(+)=nvl(d.Item1,'#') and
      d2.tree(+)=nvl(d.Item1,'#')||nvl(d.Item2,'#') and
      d3.tree(+)=nvl(d.Item1,'#')||nvl(d.Item2,'#')||nvl(d.Item3,'#') and
      d4.tree(+)=nvl(d.Item1,'#')||nvl(d.Item2,'#')||nvl(d.Item3,'#')||nvl(d.Item4,'#') and
      d5.tree(+)=nvl(d.Item1,'#')||nvl(d.Item2,'#')||nvl(d.Item3,'#')||nvl(d.Item4,'#')||nvl(d.Item5,'#') and
      d6.tree(+)=nvl(d.Item1,'#')||nvl(d.Item2,'#')||nvl(d.Item3,'#')||nvl(d.Item4,'#')||nvl(d.Item5,'#')||nvl(d.Item6,'#')
) T,
SUPERMAG.SMMARKUPCLASS M6,
SUPERMAG.SMMARKUPCLASS M5,
SUPERMAG.SMMARKUPCLASS M4,
SUPERMAG.SMMARKUPCLASS M3,
SUPERMAG.SMMARKUPCLASS M2,
SUPERMAG.SMMARKUPCLASS M1,
SUPERMAG.SMMARKUPCLASS M
where
(m6.pricetype(+)=T.pricetype and m6.idclass(+)=T.id_parent6) and
(m5.pricetype(+)=T.pricetype and m5.idclass(+)=T.id_parent5) and
(m4.pricetype(+)=T.pricetype and m4.idclass(+)=T.id_parent4) and
(m3.pricetype(+)=T.pricetype and m3.idclass(+)=T.id_parent3) and
(m2.pricetype(+)=T.pricetype and m2.idclass(+)=T.id_parent2) and
(m1.pricetype(+)=T.pricetype and m1.idclass(+)=T.id_parent1) and
(m.pricetype=T.pricetype and m.idclass=T.id_parent) and not m.extracharge is null
/
Возможно, что эти вьюхи нужно создавать под другим пользователем, нежели под пользователем SYSTEM?
01.10.2009 11:37
Mtirt
 
Попробуй запустить этот код под supermag.
Беды большой от этого не будет.
Проверь еще после этого, чтобы у пользователей SINHRA и MAXIMIZATOR были права на выбор данных их этих вьюх.
01.10.2009 11:48
TrantiMoller
 
Попробовал под разными пользунами - все равно их нет!
Может я чего-то не допонимаю....
Если в ручную их создать, на какие моменты, помимо прав нужно обратить внимание?
01.10.2009 12:59
TrantiMoller
 
Создал вручную - отчет заработал!
Теперь такая-же фигня по АВС-анализу... буду разбираться (кстати, АВС старый работает!)
Спасибо всем за помощь!
05.10.2009 14:04
Pall_V
 
Сергей, интересует назначение ключа DE_DirUpdate= в ini-файле
было бы не плохо нажать на какую-нить кнопочку и чтобы у пользователя отчеты засинхронизировались, я решил это при помощи батника, но так в качестве пожелания :thank_you2:
08.10.2009 18:00
mighty
 
Я уже прекратил дальнейшие обновления этого максимизатора, я уже давно в нем ничего не меняю, времени нет, но есть новый проект максимизатора сейчас версия его 2.0.4 - пока его не выкладываю еще надо много доделать..Надеюсь к новому году его дописать в нем уже многооконный режим MDI, исполнение собственных скриптов и окно выполнения скриптов аля 1C, кнопки окнон тоже аля 1С многопоточность при отборах документов, карточек и т.д. аля СМ+ ))) ну отчеты буду поддерживаться все от старой версии, но основное ради чего он писался это управление, контроль и согласование СМ+ с кассами 1С Штрих-М Кассир от выгрузки данных до загрузки смен в СМ..
Интересный момент, например, это автоматическая раздача PLU весовым товарам с заполнением всех пустых (удаленных ПЛУ) и только для товаров у которых есть розничная цена, и которые активные и в матрице магазина..в результате например у нас во всех магазинах на всех весах все товары, без разбивки по отделам..и не важно какие весы..
06.10.2011 05:48
DIMAJBL
 
Доброго времени суток. Проблема такая начальству нужен отчет который отображал бы сколько раз за отрезок времени кассир продал тот или иной товар. Подскажите пожайлуста как это реализовать в максимизаторе.
07.10.2011 09:46
mighty
 
Привет.
1) Заходите на , качаете документацию пользователя, она доступная и простая(это как создать отчет в фастрепорте).
2) В максимизатор заходите под пользователем SUPERMAG, далее в любую группу отчетов снизу справа есть кнопки "Создать", "Редактировать", "Выполнить"
3) Щелкаете "Создать", создаете отчет и называете его в ссотвествии с правилом наименований отчетов в максе. Сохраняете в папку отчетов и все.

сам запрос который выведет вам количество продаж одного товара такой:
select
count(i.article) sale_count,sum(i.quantity) sale_quantity, sum(i.totalsum) sale_sum, ch.cashier,u.surname,l.name loc_name
from
supermag.smcashchecks ch,
supermag.smcashcheckitems i,
supermag.smcashdesksstaff u,
supermag.smstorelocations l
where ch.locid=i.locid
and ch.desknum=i.desknum
and ch.znum=i.znum
and ch.checknum=i.checknum
and ch.cashier=u.id(+)
and ch.locid=u.locid(+)
and ch.locid=l.id
and ch.locid=14
and ch.opcode=1
and ch.printtime>=to_date('05.10.2011 00:00:00','DD.MM.YYYY HH24:MI:SS')
and ch.printtime<=to_date('05.10.2011 23:59:59','DD.MM.YYYY HH24:MI:SS')
and i.article='058441'
group by ch.cashier,u.surname,l.name

поменяете мои параметры на свои и все
08.10.2011 04:55
Tiger
 
Цитата:
mighty Привет.
1) Заходите на , качаете документацию пользователя, она доступная и простая(это как создать отчет в фастрепорте).
2) В максимизатор заходите под пользователем SUPERMAG, далее в любую группу отчетов снизу справа есть кнопки "Создать", "Редактировать", "Выполнить"
3) Щелкаете "Создать", создаете отчет и называете его в ссотвествии с правилом наименований отчетов в максе. Сохраняете в папку отчетов и все.

сам запрос который выведет вам количество продаж одного товара такой:
select
count(i.article) sale_count,sum(i.quantity) sale_quantity, sum(i.totalsum) sale_sum, ch.cashier,u.surname,l.name loc_name
from
supermag.smcashchecks ch,
supermag.smcashcheckitems i,
supermag.smcashdesksstaff u,
supermag.smstorelocations l
where ch.locid=i.locid
and ch.desknum=i.desknum
and ch.znum=i.znum
and ch.checknum=i.checknum
and ch.cashier=u.id(+)
and ch.locid=u.locid(+)
and ch.locid=l.id
and ch.locid=14
and ch.opcode=1
and ch.printtime>=to_date('05.10.2011 00:00:00','DD.MM.YYYY HH24:MI:SS')
and ch.printtime<=to_date('05.10.2011 23:59:59','DD.MM.YYYY HH24:MI:SS')
and i.article='058441'
group by ch.cashier,u.surname,l.name

поменяете мои параметры на свои и все

Попытался поправить твой отчет (!MAN_Продаваемость товаров за период.fr3). Заменив предыдущий запрос на предложенный тобой с некоторыми исправлениями:
Цитата:
ADOQuery_CARD.SQL.Text:='select count(i.article) sale_count,sum(i.quantity) sale_quantity, sum(i.totalsum) sale_sum, ch.cashier,u.surname,l.name loc_name '+chr(13)+
'from supermag.smcashchecks ch, supermag.smcashcheckitems i,supermag.smcashdesksstaff u, supermag.smstorelocations l '+chr(13)+
'where ch.locid=i.locid '+chr(13)+
'and ch.desknum=i.desknum '+chr(13)+
'and ch.znum=i.znum '+chr(13)+
'and ch.checknum=i.checknum '+chr(13)+
'and ch.cashier=u.id(+) '+chr(13)+
'and ch.locid=u.locid(+) '+chr(13)+
'and ch.locid=l.id '+chr(13)+
'and ch.locid=14 '+chr(13)+
'and ch.opcode=1 '+chr(13)+
'and d.CREATEDAT>=to_date('''+DateToStr(DE_Begin.Date)+''',''DD.MM.YYYY'') '+chr(13)+
'and d.CREATEDAT<=to_date('''+DateToStr(DE_End.Date)+''',''DD.MM.YYYY'') '+chr(13)+
'and i.article=E_ARTICLE.Text '+chr(13)+
'group by ch.cashier,u.surname,l.name ';
Но при запуске в SM-Максимизаторе были обнаружены следующие ошибки:
1. Не удалось найти класс TfrxDataPage;
2. Набор данных "" не найден.

Где я ошибаюсь? И как поправить, чтобы по артикулу выполнялся отчет, показывающий количество, сумму и кассира (ФИО)?
Часовой пояс GMT +3, время: 22:31.

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