28.04.2011 17:21
Evruss
 
Как сравнить остатки по базам. В магазине нет того что есть на центральном складе. Как это выявить?
28.04.2011 17:26
John Doe
 
Количество документов совпадает? Просто в Excel сравнить все номера, даты и статусы. Все документы по очереди. За почтовиком следишь?
28.04.2011 18:07
konst
 
Зависит от версии СуперМага, кол-ва магазинов и кол-ва документов.

1-й вариант: уже не помню, но в какой то версии появилась встроенная сверка документов в почтовом модуле

2-й вариант: сравнить документы и остатки
т.е. выгрузить в файл список документов из ЦО и из МХ
например номер, дата, поставщик, сумма, статус
и остатки артикул - количество
с одинаковой сортировкой
только делать в тот момент, когда обмен между БД выполнен на 100%
и простейшим компарером сравнить (например встроенным в тотал коммандер)
29.04.2011 08:20
Mtirt
 
А я не совсем поняла формулировку задачи.
Может быть надо переместить в магазины те товары, которые есть на ЦС, но которых нет в магазине?
29.04.2011 10:34
AirAir
 
Можно, как писали ранее - проверить количество и суммы документов в разных базах.

Можно 1.Создать связь БД - например создаем её в базе ЦО
create public database link supermag.XX
connect to sys identified by пароль
using 'SID'
SID - имя удалённой базы-базы магазина-как в tnsnames.ora

2. SELECT db_office.ARTICLE,
smcard.name,
db_office.quantity,
db_magazine.quantity as quantity_in_magazine
FROM supermag.SMGOODS db_office,
[email]supermag.SMGOODS@supermag.XX[/email] db_magazine,
supermag.smcard
WHERE
db_office.ARTICLE = smcard.article AND
db_office.ARTICLE = db_magazine.ARTICLE AND
db_office.QUANTITY <> db_magazine.quantity AND
db_office.STORELOC = 4 --место хранения--твой магазин

В smgoods - попадает товар который когда либо участвовал в документах изменяющие остаток.Поэтому кол-во документов тоже надо проверить, можно тоже через связь БД.
29.04.2011 12:21
Evruss
 
Цитата:
Mtirt А я не совсем поняла формулировку задачи.
Может быть надо переместить в магазины те товары, которые есть на ЦС, но которых нет в магазине?
Именно так
29.04.2011 12:22
Mtirt
 
А что, при генерации складских требований ничего не генерируется?
29.04.2011 12:25
Dim
 
народ, значит, предлагает решение совсем не той проблемы... а топик-стартер молча смотрит на это...
16.02.2012 08:46
CrazyWolf
 
Попробую спросить за топикстартера :)
А как правильно ДБЛинком делать сверку документов? При условии что нужно полностью сравнивать базы по наличию документов и их статусам. Пока на скорую руку набросал вот так
Код:
select drc.id, dsrc.docstatename, dshop.id, dshop.docstatename 
from smdocuments drc
left outer join ssdocstates dsrc on (drc.doctype = dsrc.doctype and drc.docstate = dsrc.docstate)
full join (select dsh.id, dssh.docstatename 
            from smdocuments@shop_db dsh
            left outer join ssdocstates dssh on (dsh.doctype = dssh.doctype and dsh.docstate = dssh.docstate)
            where dsh.createdat between trunc(:dateFrom) and trunc(:dateTo)
            and dsh.doctype = :doctype and (dsh.locationfrom = :storelock or dsh.locationto = :storelock or dsh.location = :storelock) ) dshop on (drc.id = dshop.id)
where drc.createdat between trunc(:dateFrom) and trunc(:dateTo) and drc.doctype = :doctype and (drc.locationfrom = :storelock or drc.locationto = :storelock or 
drc.location = :storelock)
т.е. тупо full join двух выборок, только как-то неаккуратненько это :(
16.02.2012 08:57
Mtirt
 
Оптимайзер умеет сравнивать документы.
Есть синхронизация в почтовом модуле.
Ну и dblink дело грустное, глючное и медленное...
Часовой пояс GMT +3, время: 16:50.

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