[ОТВЕТИТЬ]
Опции темы
18.08.2011 12:06  
TimofeySin
Доброе время суток!
Я программист 1С. Дали задачу организовать выгрузку из супермага в 1с БУХ.
Какая-то выгрузка уже есть. Основана на запросах к базе. надо её чуть чуть доработать. Но вот не задача никогда я не сталкивался с супермагом.
Есть ли какой-нибудь конструктор запросов для этих целей? или все надо писать только руками?
 
18.08.2011 12:36  
OlegON
Поподробнее бы о выгрузке и запросах. Лучше бы ее в Хранилище бросить и сюда ссылку.
 
18.08.2011 12:39  
Dim
посмотреть в документации к Супермагу структуру базы и изучить язык запросов SQL
 
18.08.2011 12:40  
TimofeySin
А чего о ней подробней то? учет суммовой.
Внешняя обработка в 1с, делает запрос (например таб поле товары для документа "ОтчетПроизводстваЗаСмену":
Код:
select /*+ FIRST_ROWS */ d.title Tovar,
case when substr(e.tree,1,instr(e.tree,'.',1,1))='40.' then '0040'
when substr(e.tree,1,instr(e.tree,'.',1,1))='42.' then '0042'
else '0001' end Gr,tax.taxgroupid TaxTovar,          
sum(t.Quantity) TQuant,
sum(t.totalpricenotax) TSumNoTax  
from supermag.smspec t, supermag.smcard b,supermag.saarticletypes d, supermag.sacardclass e, supermag.smcardtax tax, supermag.smdocuments dd 
where t.docid=&idDoc
and t.doctype='PO'
and t.doctype=dd.doctype
and t.docid=dd.id
and t.Article=b.article
and b.datatype=d.id
and b.idclass=e.id
and t.Article=tax.article and tax.rgnid=-1
and (dd.createdat>=tax.datefrom and dd.createdat<tax.dateto)
group by d.title,
case when substr(e.tree,1,instr(e.tree,'.',1,1))='40.' then '0040'
when substr(e.tree,1,instr(e.tree,'.',1,1))='42.' then '0042'
else '0001' end, tax.taxgroupid
И в зависимости от НДС ищет номенклатуру и подставляет её.
Может все таки расскажите технологию написания запросов к супермагу?
 
18.08.2011 12:42  
TimofeySin
То есть понятно что взял и начал писать... но удобней было бы если б был бы конструктор какойнить...
 
18.08.2011 12:44  
OlegON
Конструкторы это для тех, кто хочет кривые запросы строить и не хочет работать ;) Приведенное и есть запрос SQL, т.е. Dim прав.
 
18.08.2011 13:00  
TimofeySin
А где можно взять документацию к Супермагу.. А то я человек наемный и никакие доступы к фтп итд не имею.
 
18.08.2011 13:08  
Dim
если стоит супермаг, то и документация должна быть
 
19.08.2011 12:38  
akonev
документацию запросить у того, у кого супермаг используется.
если у них нет (протеряли) - у того, кто им супермаг продал.

запрос к супермагу - это запрос к ораклу. соответственно, искать надо не инструментарий для супермага конкретно, а выбирать из того, что напридумывано для оракла вообще. простой и бесплатный вариант - query reporter от allroundautomations
 
19.08.2011 20:40  
Mtirt
Цитата:
Сообщение от TimofeySin
А чего о ней подробней то? учет суммовой.
Внешняя обработка в 1с, делает запрос (например таб поле товары для документа "ОтчетПроизводстваЗаСмену":
Код:
select /*+ FIRST_ROWS */ d.title Tovar,
case when substr(e.tree,1,instr(e.tree,'.',1,1))='40.' then '0040'
when substr(e.tree,1,instr(e.tree,'.',1,1))='42.' then '0042'
else '0001' end Gr,tax.taxgroupid TaxTovar,          
sum(t.Quantity) TQuant,
sum(t.totalpricenotax) TSumNoTax  
from supermag.smspec t, supermag.smcard b,supermag.saarticletypes d, supermag.sacardclass e, supermag.smcardtax tax, supermag.smdocuments dd 
where t.docid=&idDoc
and t.doctype='PO'
and t.doctype=dd.doctype
and t.docid=dd.id
and t.Article=b.article
and b.datatype=d.id
and b.idclass=e.id
and t.Article=tax.article and tax.rgnid=-1
and (dd.createdat>=tax.datefrom and dd.createdat<tax.dateto)
group by d.title,
case when substr(e.tree,1,instr(e.tree,'.',1,1))='40.' then '0040'
when substr(e.tree,1,instr(e.tree,'.',1,1))='42.' then '0042'
else '0001' end, tax.taxgroupid
И в зависимости от НДС ищет номенклатуру и подставляет её.
Может все таки расскажите технологию написания запросов к супермагу?
Этот запрос написан мной. Что вы в нем пытаетесь изменить, на каком основании и кто вы вообще такой?
 
 


Опции темы



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

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