|
v7: Прямой запрос SQL из Delphi к данным базы 1С 7.7 | ☑ | ||
---|---|---|---|---|
0
Vitekkkk
12.07.12
✎
10:46
|
Добрый день!
Помогите пожалуйста с такой проблемой: Не могу составить запрос к таблицам MS SQL2005 базы 1C 7.7 Суть запроса такова: Нужно по выбранному пользователем ВидуНоменклатуры Собрать остатки номенклатуры на текущую Дату. Т.е. из РегистрМПЗ нужно как то вытащить данные актуальные только на текущую дату. Помогите пожалуйста!!! В файле 1Cv7.DDS посмотрел какие таблицы содержат необходимые мне данные: 1. Справочник Номенклатура - SC4089 #-----Fields------- # Name |Descr |Type|Length|Precision F=ROW_ID |Row ID |I |0 |0 F=ID |ID object |C |9 |0 F=PARENTID |ID parent obj |C |9 |0 F=CODE |object code |C |6 |0 F=DESCR |object description |C |50 |0 F=ISFOLDER |Is Line - Folder |Y |0 |0 F=ISMARK |Object is Marked for|L |0 |0 F=VERSTAMP |Version stamp |I |0 |0 F=SP43594 |(P)БазоваяНоменклату|C |9 |0 F=SP4095 |(P)Валюта |C |9 |0 F=SP41421 |(P)ВидДолга |C |9 |0 F=SP17067 |(P)ВидНоменклатуры |C |9 |0 F=SP47846 |(P)ВидТары |C |9 |0 F=SP46126 |(P)ВключатьВПрайсЛис|N |1 |0 F=SP15056 |(P)ГТД |C |9 |0 F=SP4093 |(P)ЕдиницаИзмерения |C |9 |0 F=SP55847 |(P)ЕдиницаИзмеренияП|C |9 |0 F=SP43595 |(P)ИспользоватьБазов|N |1 |0 F=SP19715 |(P)МинОстаток |N |13 |3 F=SP18977 |(P)ОсновнаяЕдиницаИз|C |9 |0 F=SP41346 |(P)ОсновноеНазначени|C |9 |0 F=SP45137 |(P)ПризнакВТ |N |1 |0 F=SP41345 |(P)ПризнакПередачиВЭ|N |1 |0 F=SP43038 |(P)СегментАссортимен|C |9 |0 F=SP14847 |(P)СтранаПроисхожден|C |30 |0 F=SP41344 |(P)СчетУчета |C |9 |0 F=SP41377 |(P)ТипНоменклатуры |C |9 |0 F=SP51022 |(P)Утиль |N |1 |0 F=SP55443 |(P)УчетВШт |N |1 |0 F=SP42975 |(P)ШтрихКод |C |13 |0 F=SP55444 |(P)Оболочка |C |9 |0 F=SP55445 |(P)СкидкаНаПотерюВес|N |1 |0 F=SP55446 |(P)Комитент |C |9 |0 F=SP55447 |(P)ДоговорКомитента |C |9 |0 F=SP55448 |(P)СрокИзготовления |N |5 |0 F=SP55721 |(P)КлассификаторНоме|C |9 |0 F=SP55848 |(P)ЧасВыработки |C |10 |0 F=SP55849 |(P)КодОКП |C |25 |0 F=SP55850 |(P)УсловияХранения |C |20 |0 F=SP56336 |(P)МассоваяДоляБелка|C |20 |0 F=SP56337 |(P)МассоваяДоляЖира |C |20 |0 F=SP56338 |(P)МассоваяДоляХлори|C |20 |0 F=SP56339 |(P)ВидПотребитТары |C |9 |0 F=SP56371 |(P)ШифрВФоксе |C |21 |0 F=SP56372 |(P)ПозицияПоПрейскур|N |5 |0 F=SP56879 |(P)КлассификаторНоме|C |9 |0 F=SP56895 |(P)ЯвляетсяАналогомП|N |1 |0 F=SP56920 |(P)ВидЗатратРазделка|C |9 |0 F=SP56921 |(P)ВНормахУказываютс|N |1 |0 F=SP56922 |(P)НенормируемаяЗатр|N |1 |0 F=SP56896 |(P)_Идентификатор |C |40 |0 F=SP56827 |(P)КоэфВкг |N |9 |5 F=SP58149 |(P)Замороженное |N |1 |0 F=SP58150 |(P)ВесЕдТранспортной|N |11 |5 F=SP58173 |(P)КоэфВуб |N |6 |5 F=SP58668 |(P)ВидНоменклатурыДл|C |9 |0 F=SP20247 |(P)Комментарий |M |0 |0 F=SP4090 |(P)ПолнНаименование |M |0 |0 F=SP55722 |(P)ТекстЛистаВкладыш|M |0 |0 2. Справочник ВидыНоменклатуры - SC16718 #-----Fields------- # Name |Descr |Type|Length|Precision F=ROW_ID |Row ID |I |0 |0 F=ID |ID object |C |9 |0 F=PARENTID |ID parent obj |C |9 |0 F=CODE |object code |C |7 |0 F=DESCR |object description |C |60 |0 F=ISFOLDER |Is Line - Folder |Y |0 |0 F=ISMARK |Object is Marked for|L |0 |0 F=VERSTAMP |Version stamp |I |0 |0 F=SP50893 |(P)РаспределятьКосве|C |9 |0 3. Регистр УчетМПЗ - RG3824 #-----Fields------- # Name |Descr |Type|Length|Precision F=PERIOD |Period Registr |D |0 |0 F=SP41379 |(P)ТипНоменклатуры |C |9 |0 F=SP3990 |(P)Номенклатура |C |9 |0 F=SP3826 |(P)МестоХранения |C |9 |0 F=SP3827 |(P)Количество |N |14 |3 F=SP55695 |(P)КоличествоВШт |N |14 |3 F=SP41329 |(P)Сумма |N |14 |2 |
|||
1
Ёпрст
12.07.12
✎
10:54
|
select
рег.SP3990 sum(рег.SP3827) FROM RG3824 рег WHERE period = :ВыбДата |
|||
2
Ёпрст
12.07.12
✎
10:55
|
зпт там в селект + дату в нужном формате..
+ лефтджоин к справочнику МПЦ для взятия descr у номенклатуры.. |
|||
3
vah1
12.07.12
✎
10:55
|
долго думал?
ЗЫ о потерянном времени |
|||
4
viktor_vv
12.07.12
✎
10:58
|
(2)+ ВыбДата начало месяца.
|
|||
5
Ёпрст
12.07.12
✎
10:59
|
(4) ошибаешься.
ВыбДата - последнее начало периодичности хранения останков. И далеко не у всех период хранения останков - месяц. |
|||
6
viktor_vv
12.07.12
✎
11:02
|
(5) Ну это да, привык таки к месяцу. Просто он мог туда пихать свою текущую дату.
|
|||
7
Vitekkkk
12.07.12
✎
11:50
|
Если мне нужны остатки на сегодня допустим. Мне устанавливать не Текущую дату? а какую?
|
|||
8
Vitekkkk
12.07.12
✎
11:50
|
Начало дня?
|
|||
9
Vitekkkk
12.07.12
✎
11:53
|
Ёпрст4 как подскажи пожалуйста как мне перевести Date в формат '00.00.00 0:00:00'
|
|||
10
ДенисЧ
12.07.12
✎
11:55
|
(9) кто на дельфях пишет - ты или Ёпрст? :-)
Ищи в справке форматирование дат... |
|||
11
Ёпрст
12.07.12
✎
12:08
|
например так:
Convert(DateTime,'20120701',112) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |