[ОТВЕТИТЬ]
23.03.2011 03:03
Deamonicus
 
Добрый день. Необходимо настроить двусторонний обмен между 1С:Супермаркет Комплекс 8 и Кристалл Сет ритейл v 05.02.80. Но стандартный файловый обмен рассматривается в последнюю очередь. Хотелось бы через Com-соединение, с использованием sql-запросов. Может быть у кого нибудь это уже реализовано?! Прошу помощи, какие нюансы, сложности возникают при такой схеме обмена?
23.03.2011 11:52
TANGOR
 
в службе KassServer
необходимо установить что она работает как Lite версия.
тогда KassServer полученные по COM интерфейсу данные будет отправлять на импорт SET Retail, а дальше стандатный импорт...

а вот насчёт экспорта... хз...
11.04.2011 09:36
Deamonicus
 
Добрый день. Решено организовать обмен СМ Комплекс и Set Retail просто через SQL запросы. Спросил у разработчика, говорят возможно. Выгрузить все данные с 1С в БД SES через процедуру ImportDataInsert. Данные попали в таблицу ImportData и дальше не идут никуда, хотя должны. Вопрос, есть утилита ImpExpSetup, что в ней нужно настроить, чтобы задания появились на импорт? уже все перепробовал вроде...
Еще вопрос по экспорту, может кто знает какая предопред. процедура есть в БД SES, которая Zотчеты формирует?
Заранее, спасибо!
11.04.2011 12:33
TANGOR
 
Вот дока по настройке всего :) (транспорт импорт "экспорт")...
С помощью утилиты ImpExpSetup.exe
если что-то более конкретное, кроме "ничего не работает" :) спрашивайте...

понятие "процедуры по формированию Z-отчёта" я не понимаю :)
Z-отчёт приходит с кассы, на сервере Retail, эти данные проверяются с суммами по всем чекам данной смены, и автоматом, либо перезапрашиваются чеки с кассы, или смена "краснеет" с ошибками.
А вот далее при выгрузке во внешнюю систему данные по z-отчётам
называются либо "Отчёт по снятиям" либо как-нибудь ещё :)

перечень всех отчётов SET находится в таблице OperReports.
там же и наименования процедур которые их формируют...
11.04.2011 12:34
TANGOR
 
Транспорт SET. настройка.
13.04.2011 07:35
Deamonicus
 
Вобщем ненужно было трогать ImpExpSetup. Установил заново, все работает. Вопрос возник другой. Раньше при передаче товаров на весы был такой атрибут PluNumber, в новой версии нет! Как теперь передавать Плу-коды товаров на весы?
13.04.2011 13:55
TANGOR
 
Вы имеете ввиду мнемонику импорта PLUNUMBER?
да... её как-то про... потеряли :)

Её вернули только в 81-й версии,
кусочек из README:

8 SR-3228
Добавлена возможность указывать в импорте номера конкретных весов с конкретными PLU для создания привязок
Компоненты
msdb Retail
Скрипты
05028143_GoodsToScales.sql
05028144_1_cp_TransImpExpDataProcess.sql
05028144_2_cp_TransImportGoodsBarCode.sql
05028144_3_TransImportXMLtoData.sql"
Описание работы
Добавлена возможность указания номера устройств в XML, для этого необходимо создать тэг в первом вложении, например:
<XMLBARCODE DocumentDescription="Товары">
<OPTIONS SHOPLIST="1,2,3" DEVICELIST="71,72"/>
<GOOD ... >
</GOOD>
</XMLBARCODE>
13.04.2011 13:59
TANGOR
 
Цитата:
Deamonicus Вобщем ненужно было трогать ImpExpSetup. Установил заново, все работает. Вопрос возник другой. Раньше при передаче товаров на весы был такой атрибут PluNumber, в новой версии нет! Как теперь передавать Плу-коды товаров на весы?
начиная с версии 5.2.79.3
в SET есть понятие Группы Весов.
к группам привязываются весы и логика обработки данных для этих весов.
например можно выбрать один из 4-х типов формирования PLU для товаров.
по штрихкоду (часть ШК без префикса)
по коду товара (код = PLU)
автоматом (Max(PLU)+1)
вручную. (PLU = 0, необходимо в модуле визуализации задавать его вручную.)

Если вам это не подходит, и Вы хотите грузить номер PLU из ERP ставьте 81...
27.04.2011 04:11
Deamonicus
 
Разработчик не дает 81 релиз, говорит еще в разработке. А у Вас откуда такие сведения о 81 релизе? Вы как то связаны с кристаллом?
Дали какой то патч на 80 релиз и сказали, что можно передавать из ERP в сет плу коды, если установить для группы весов "ручную генерацию плу". Но не работает.
27.04.2011 10:31
TANGOR
 
Цитата:
Deamonicus Разработчик не дает 81 релиз, говорит еще в разработке. А у Вас откуда такие сведения о 81 релизе? Вы как то связаны с кристаллом?
Дали какой то патч на 80 релиз и сказали, что можно передавать из ERP в сет плу коды, если установить для группы весов "ручную генерацию плу". Но не работает.
нда... оказывается там вообще бардак с этим PLU номером.
А Вы PLU грузите в центруме или на магазине?

p.s. 81 = 80 + Все патчи + все сборки.
Патч это исправление ошибок.
Сборка это новый функционал
(это в оооочень идеальном варианте :))

p.s.s. Мы все связаны с кристаллом :) надо просто задавать правильные вопросы, правильным людям, чтобы получить правильные и точные ответы :)
10.05.2011 08:25
Deamonicus
 
Кстати, кто сталкнется с такой же проблемой. Плу код можно указать в тэге BarCode. Проверил, все работает. Плу грузим на магазине.
10.05.2011 08:53
Deamonicus
 
Возник вопрос. Каким образом теперь происходит печать на принтере ценников и этикеток? Раньше использовалась утилита KassServer, теперь ее нет.
Через процедуру ImportDataInsert написано, что нужно указать просто тип устройства и его код, но такой метод не работает.
18.05.2011 17:41
JohnnySE
 
Подскажите, как правильно написать строку создания COM объекта в 1с для выгрузки товаров?
18.05.2011 21:16
TANGOR
 
Цитата:
Deamonicus Возник вопрос. Каким образом теперь происходит печать на принтере ценников и этикеток? Раньше использовалась утилита KassServer, теперь ее нет.
Через процедуру ImportDataInsert написано, что нужно указать просто тип устройства и его код, но такой метод не работает.
во первых служба не KassServer а SesPrinter.
во вторых, да щас так не работает... точнее работает, но сложнее, надо на магазине чтобы для принтеров, задания создавались в таблица JobsQueue и JobsData. Новый импорт с этими таблицами не работает.

Зато есть куча новых вариантов печати :)
есть служба SetLabel и новый тип ценников (SLT SetLabelTemplate)
есть утилитки по созданию шаблонов этих ценников.
и утилитка печати данных из базы SES или напрямую ваще любых данных из XML. также из кристала можно печатать эти ценники...
18.05.2011 21:22
TANGOR
 
Цитата:
JohnnySE Подскажите, как правильно написать строку создания COM объекта в 1с для выгрузки товаров?
Советую пользоваться не COM а импортом либо файловым либо через таблицу в БД SES ImportData.

потому как начиная с версии (помоему) 77 технология работы SETa с COM такая.
внешняя система заполняет COM объект, а служба kassServer разбирает этот объект и направляет эти данные на вход импорта в таблицу ImportData, а там уже работает стандартный импорт.
службу KassServer не изменяли уже больше года, и менять её точно не будут, а вот импорт модернизируется постоянно.

p.s. это я к тому что если Вы считаете что оправив через COM объект данные в SET и получив от службы KassServer положительный ответ о приёме этих данных, нельзя быть на 100% уверенным что данные обработались и попали в справочники SET, потому что из мог не принять импорт. а kassServer об этом ничего не знает...
эти данные будут просто лежать в таблице ImportDataArchive с ошибочным статусом...
19.05.2011 04:31
GreatLoki
 
Цитата:
TANGOR Советую пользоваться не COM а импортом либо файловым либо через таблицу в БД SES ImportData.
Всецело поддерживаю, ибо COM объект работает не особо шустро, особенно по сети, плюс есть определенные заморочки с правами на COM, особенно когда сеть с доменом.
Сам пользуюсь файловым обменом через DBF на импорт и прямой запрос к SQL серверу на экспорт - вполне нормально. В версии 5.2 файловый импорт довольно шустрый стал, правда есть маленькие недочеты в механизмах обработки импорта как такового - надо аккуратно тестировать новые хотелки "на кошках".
19.05.2011 04:41
GreatLoki
 
В качестве примеров:

1. Вот запрос за получение чеков
Код:
ТекстЗапроса = "SELECT     Head.Cash_Code, Head.DateOperation, Head.Ck_Number, Head.Cassir, Head.Operation, Head.Summa AS SummaCheque, Pos.Ch_Pos, Pos.Code,
	| Pos.BarCode, Pos.BarCode1, Pos.Quant, Pos.Price, Pos.Summa, Pos.NDSx1, CAST(Head.OperDay AS varchar(8)) AS OperDay, Head.NSmena, 
	|  Pos.SizeScale, Pos.SizeScaleValue, Pos.Disc_Summ, Head.Id
					| FROM v_ChequeHeadWA Head LEFT OUTER JOIN
					| v_ChequePosWA Pos ON Head.Id = Pos.ChequeId 
					| WHERE     (CONVERT(varchar(8), Head.DateOperation, 112) BETWEEN '" + НачДатаSQL + "' AND '" +
					КонДатаSQL + "') AND Head.Cash_Code IN (" + СтрокаККМДляЗапроса + ")
					| ORDER BY Head.DateOperation, Head.Cash_Code, Head.Ck_Number, Pos.Ch_Pos";
2. Вот запрос на получение платежей в чеках (вызывается на каждый чек)
Код:
ТекстЗапроса = "SELECT     Oper.DocType, Oper.DocSumm, Oper.DocNumber
					| FROM         "+СокрЛП(ИмяБазыКристалл)+".dbo.ChequePay AS Oper
					| WHERE     (DocNumber <> 'back') AND (ChequeId = "+Формат(ТИдЧека,"ЧРГ=; ЧН=; ЧГ=")+") AND DocType IN ("+ТСтрокаТиповОплат+")
					| UNION ALL
					| SELECT     Arch.DocType, Arch.DocSumm, Arch.DocNumber
					| FROM         "+СокрЛП(ИмяАрхивнойБазыКристалл)+".dbo.ChequePay AS Arch
					| WHERE     (DocNumber <> 'back') AND (ChequeId = "+Формат(ТИдЧека,"ЧРГ=; ЧН=; ЧГ=")+") AND DocType IN ("+ТСтрокаТиповОплат+")";
3. А вот запрос получения скидок из чеков (список типов скидок надо составить свой
Код:
ТекстЗапроса = "SELECT 
					| d.DiscType, d.DiscId,  d.CardNumber, MAX(d.DiscPercent) AS Perc
					| FROM ChequeHead h, ChequePos p, ChequeDisc d
					| WHERE p.ChequeId = h.Id AND d.PosId = p.Id
					| 	AND (CONVERT(varchar(8), h.DateOperation, 112) = '"+ДокДатаSQL+"')
					| 	AND (d.DiscType IN (256, 512, 4194304,134217728,2097152,16384,32768,64,1,8,16))
					| 	AND h.Cash_Code = "+Формат(НомерКассы,"ЧН=; ЧГ=0")+"
					| 	AND h.Ck_Number = "+Формат(НомерЧека,"ЧН=; ЧГ=0")+"
					| 	AND h.NSmena = "+Формат(НомерСмены,"ЧН=; ЧГ=0")+"
					| GROUP BY d.DiscType, d.DiscId, d.CardNumber
					| UNION ALL
					| SELECT 
  					| d.DiscType, d.DiscId, d.CardNumber, MAX(d.DiscPercent) AS Perc
					| FROM SES_Archive.dbo.ChequeHead h, SES_Archive.dbo.ChequePos p, SES_Archive.dbo.ChequeDisc d
					| WHERE p.ChequeId = h.Id AND d.PosId = p.Id
					| 	AND (CONVERT(varchar(8), h.DateOperation, 112) = '"+ДокДатаSQL+"')
					| 	AND (d.DiscType IN (256, 512, 4194304,134217728,2097152,16384,32768,64,1,8,16))
					| 	AND h.Cash_Code = "+Формат(НомерКассы,"ЧН=; ЧГ=0")+"
					| 	AND h.Ck_Number = "+Формат(НомерЧека,"ЧН=; ЧГ=0")+"
					| 	AND h.NSmena = "+Формат(НомерСмены,"ЧН=; ЧГ=0")+"
					| GROUP BY d.DiscType, d.DiscId, d.CardNumber";
19.05.2011 11:58
JohnnySE
 
ImportDataInsert

А тогда вопрос по процедуре ImportDataInsert.
Можно пример вызова?
21.05.2011 23:10
JohnnySE
 
Цитата:
JohnnySE ImportDataInsert

А тогда вопрос по процедуре ImportDataInsert.
Можно пример вызова?
Ну, хоть подскажите, что передовать в параметры xml
21.05.2011 23:41
Snoring
 
Цитата:
ДжониСЕ Ну, хоть подскажите, что передовать в параметры xml
Лови инструкцию :connie_3:
31.03.2014 20:34
atimofeev
 
Существует проблема при установке Set Retail вер.05,02,80,16 на windows server 2012(Microsoft SQL server 2012). .Не запускаются службы Ses интерфейс к СТО, Ses-мониторинг файловой системы, Ses-печать на термопринтеры, Ses-служба файлового обмена с ККМ. Из-за этого нет возможности зарегестрировать com объекты(для обмена данными с 1С-Рарус ТКПТ) и не производится выгрузка товаров на кассы(если заполнять товары непосредственно в crystal).
Ошибка 1053. Служба не ответила на запрос своевременно. Код события 7000.
03.04.2014 08:07
Kirik
 
Я вам крайне рекомендую для обмена с 1С-Рарус ТКПТ использовать XML. Про COM-объекты лучше вообще забыть. Если же по какой-то причине вы не можете или не хотите этого делать. То в первую очередь для того, чтобы работали старые службы SET Retail, вам необходимо в ОС отключить Предотвращение выполнения данных DEP для всех программ.

На 2012 сервере честно говоря, не пробовал, но на 2008 все работает с отключенным DEP. Некорректно работает только служба печати на термопринтеры, но она тоже запускается.
07.04.2014 13:12
atimofeev
 
Спасибо. Воспользуюсь Вашим советом, попытаюсь настроить обмен через XML. Если есть какие-нибудь руководства по этой теме, подскажите.
Опции темы


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

 

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