[ОТВЕТИТЬ]
Опции темы
10.01.2008 09:16  
Mihon
Уважаемые спецы!
Не писал ти кто-нибудь скриптик, кладущий документ (например ПН) в очередь почтовика? Не могли бы поделиться?
Честно говоря, сам бы попробовал написать, но тестировать негде, боюсь рабочую базу запороть.
заранее благодарен
 
10.01.2008 09:41  
Mtirt
Приблизительно так... Судя по самой табличке smpostqueue. Не тестировала...

Код:
insert into supermag.smpostqueue(enqtime,enqseq,target,objtype,
objid,paramint,paramstr,transflags,virtpack,commentary) 
select  sysdate,rownum,null,doctype, docid , null, null, 
0,null, null from supermag.smdocuments 
where doctype=:VDoctype and docid=:VDocid
 
10.01.2008 10:10  
Mihon
Пасиба...
Значит, в качестве
(enqtime,enqseq,target,objtype,objid,paramint,paramstr,transflags,virtpack,commentary)
подставляем
sysdate,rownum,null,doctype, docid , null, null, 0,null, null

А что за параметр enqseq = rownum и откуда его взять?
 
10.01.2008 10:33  
Mtirt
Еще момент. target надо задать... Это id в таблице smpostlocations для той базы, куда ты хочешь послать документ.
Если стоит null - то отправишь всем.

rownum - номер строки в запросе. Если в запросе один документ, то всегда будет равняться 1. Если ты в запрос положишь несколько документов, то будет увеличиваться на 1 по каждому документу.
 
29.01.2008 14:30  
Mihon
Небольшая проблемка, по-поводу target...
В дочерних базах в табличке smpostlocations есть только 1 строка (сам магазин), получается для отправки в центр непонятно какое значение для параметра target указать...
Предполагаю, что null, тогда в центр уйдет?
Но тогда непонятно откуда данные о "центре" возьмутся...
Подскажите, пожалуйста, заранее благодарен...
 
29.01.2008 15:01  
Mtirt
Подожди. В дочерних базах эта одна строка как раз Центр. Просто видимо название вы ей дали - Магазин. :)

Там старшая база? Пути все в ЦО?
Я бы указала 1.
 
29.01.2008 15:15  
Mihon
Код:
begin
insert into supermag.smpostqueue(enqtime,enqseq,target,objtype,
objid,paramint,paramstr,transflags,virtpack,commentary)
select  sysdate,rownum,null,doctype, docid , null, null, 
0,null, null from supermag.smdocuments 
where doctype=WI and docid='68ПН004436';
commit;
end;
/
Создал накладную в ДБ, запустил этот скрипт, реакции никакой. :(((
в чем может быть проблема?
 
29.01.2008 15:20  
Mihon
В smpostlocations в доч. базе одна запись:
ID - 0, title - имя базы магазина, outdir, indir - пути к папкам соотв. магазина на сервере ЦО, притом outdir - это входящие для ЦО получаются, ну это понятно.
Может ее (id=0) и прописать?
 
29.01.2008 15:43  
Mtirt
Да. Cтавь id=0.
 
29.01.2008 15:47  
Mtirt
Еще вопрос. Версия См2000 какая? Просто в 1.25.1 поменялась структура таблицы SMPOSTQUEUE. Для неё вместо rownum рекомендую написать SMPOSTQUEUESEQ.Next. Недавно сами нарвались на проблемы с нумерацией... :(
 
 


Опции темы



Часовой пояс GMT +3, время: 15:48.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.