Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Как объединить регист с документом? (число прочтений - 5417 )
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Как объединить регист с документом?
24. Октября 2011 :: 13:43
Печать  
 Есть у меня один отчет  в 7.7, который честно говоря, работает  через жж... Возможности решить проблему штатными средствами нет, знающие люди как-то посоветовали сделать средствами 1с++. Но я нечего не понимаю в ++, так вот из-за этого забросила в "ящик" эту проблему на долго, но всетаки проблема сама собой не решится, потому просмотрела FAQ, решила буду пробовать. Конструктором сформировала запрос
Код
Выбрать все
RS = СоздатьОбъект("ODBCRecordset");
	//Создание объекта типа Запрос
	ТекстЗапроса = "
	|SELECT ПартииОстатки.МестоХранения [МестоХранения $Справочник]
	|, ПартииОстатки.ТМЦ [ТМЦ $Справочник.ТМЦ]
	|, ПартииОстатки.Поставка [Поставка $Документ]
	|, ПартииОстатки.ОстатокТовараОстаток ОстатокТовараОстаток
	|, ПартииОстатки.СтоимостьОстаток СтоимостьОстаток
	|FROM $РегистрОстатки.Партии(:КонПериода,
	|	INNER JOIN $ДокументСтроки.ПриходныйОрдер AS ПриходныйОрдерСтроки ON Поставка = ПриходныйОрдерСтроки.IDDOC,
	|	(Поставка = ПриходныйОрдерСтроки.IDDOC)
	|	AND (ТМЦ = $ПриходныйОрдерСтроки.ТМЦ),
	|	(МестоХранения, ТМЦ, Поставка),
	|	(ОстатокТовара, Стоимость)) AS ПартииОстатки
	|GROUP BY ПартииОстатки.МестоХранения
	|, ПартииОстатки.ТМЦ
	|, ПартииОстатки.Поставка
	|ORDER BY ПартииОстатки.МестоХранения
	|, ПартииОстатки.ТМЦ
	|, ПартииОстатки.Поставка
	|";
	RS.УстановитьТекстовыйПараметр("КонПериода", КонПериода);
	RS.Отладка(1);
	ТЗ = RS.ВыполнитьИнструкцию(ТекстЗапроса);
	ТЗНаФорме.Загрузить(ТЗ); 


Не работает запрос - ошибка Column 'ПартииОстатки.ОстатокТовараОстаток' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
  В запрос нужно вытянуть МВЗ из приходного ордера, а также нужно фильтровать даные по месту хранения или МВЗ. Помогите пожалуйста Круглые глаза
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #1 - 24. Октября 2011 :: 13:55
Печать  
elle писал(а) 24. Октября 2011 :: 13:43:
 Конструктором сформировала запрос ... Не работает

Если бы конструктором - этой ошибки не было бы. А так:
  • GROUP BY здесь лишняя - ВТ группирует результат;
  • ORDER BY не имеет смысла - сортировка по внутренним идентификаторам;
  • :КонПериода ~ - на конец дня;
  • AS ПриходныйОрдерСтроки With (NOLOCK) ON - разрешить грязное чтение.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #2 - 24. Октября 2011 :: 14:06
Печать  
Исправила и  Подмигивание о чудо!!! ошибок не было, но запрос так и ничего не выгрузил (в регистре партии точно есть).
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #3 - 24. Октября 2011 :: 14:13
Печать  
Значит, в таблице ПриходныйОрдерСтроки нет строк, удовлетворяющих условию соединения.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #4 - 24. Октября 2011 :: 14:18
Печать  
elle писал(а) 24. Октября 2011 :: 14:06:
Исправила и  Подмигивание о чудо!!! ошибок не было, но запрос так и ничего не выгрузил (в регистре партии точно есть).

Посмею предположить что измерение Поставка имеет тип Документ
тогда необходимо написать вот так:
Код
Выбрать все
INNER JOIN $ДокументСтроки.ПриходныйОрдер AS ПриходныйОрдерСтроки ON RIGHT(Поставка,9) = ПриходныйОрдерСтроки.IDDOC,(RIGHT(Поставка,9) = ПриходныйОрдерСтроки.IDDOC) 

  
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #5 - 24. Октября 2011 :: 14:25
Печать  
Нет Улыбка, значит запрос неправильно сделан, (я же проверяю даные через другой отчет и знаю что там должно попасть). Поставка - тип документ (в регист кроме приходного ордера попадают и другие документы), но мне нужно к осткам партий привязать из приходного ордера справочник МВЗ.
  
Наверх
 
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #6 - 24. Октября 2011 :: 14:30
Печать  
elle писал(а) 24. Октября 2011 :: 14:25:
Нет Улыбка, значит запрос неправильно сделан, (я же проверяю даные через другой отчет и знаю что там должно попасть). Поставка - тип документ (в регист кроме приходного ордера попадают и другие документы), но мне нужно к осткам партий привязать из приходного ордера справочник МВЗ.

Поток мыслей понят не был.
  
Наверх
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #7 - 24. Октября 2011 :: 14:32
Печать  
elle писал(а) 24. Октября 2011 :: 14:25:
Нет Улыбка, значит запрос неправильно сделан, (я же проверяю даные через другой отчет и знаю что там должно попасть). Поставка - тип документ (в регист кроме приходного ордера попадают и другие документы), но мне нужно к осткам партий привязать из приходного ордера справочник МВЗ.

Сделай его в последней версии конструктора (оно умеет согласовывать типы) и всё получится. Там нет ничего сложного.  Улыбка
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #8 - 24. Октября 2011 :: 14:34
Печать  
leshik писал(а) 24. Октября 2011 :: 14:18:
elle писал(а) 24. Октября 2011 :: 14:06:
Исправила и  Подмигивание о чудо!!! ошибок не было, но запрос так и ничего не выгрузил (в регистре партии точно есть).

Посмею предположить что измерение Поставка имеет тип Документ
тогда необходимо написать вот так:
Код
Выбрать все
INNER JOIN $ДокументСтроки.ПриходныйОрдер AS ПриходныйОрдерСтроки ON RIGHT(Поставка,9) = ПриходныйОрдерСтроки.IDDOC,(RIGHT(Поставка,9) = ПриходныйОрдерСтроки.IDDOC) 


Спасибо, выгружает, что означает RIGHT(Поставка,9)?
Как вывести МВЗ с приходного ордера в тз? Как поставить фильтр по МВЗ?
  
Наверх
 
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #9 - 24. Октября 2011 :: 14:38
Печать  
berezdetsky писал(а) 24. Октября 2011 :: 14:32:
elle писал(а) 24. Октября 2011 :: 14:25:
Нет Улыбка, значит запрос неправильно сделан, (я же проверяю даные через другой отчет и знаю что там должно попасть). Поставка - тип документ (в регист кроме приходного ордера попадают и другие документы), но мне нужно к осткам партий привязать из приходного ордера справочник МВЗ.

Сделай его в последней версии конструктора (оно умеет согласовывать типы) и всё получится. Там нет ничего сложного.  Улыбка

Пожалуйста ссылку а последню версию тыкни Улыбка  может есть FAQ по конструктору, потому что пользуюсь им более на ослеп, чем осознано Смущённый
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #10 - 24. Октября 2011 :: 14:41
Печать  
elle писал(а) 24. Октября 2011 :: 14:38:
Пожалуйста ссылку а последню версию тыкни Улыбка  может есть FAQ по конструктору, потому что пользуюсь им более на ослеп, чем осознано Смущённый

http://www.1cpp.ru/forum/YaBB.pl?num=1148127139. FAQ нету - интуитивно-"понятный" интерфейс..   Смех
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #11 - 25. Октября 2011 :: 09:38
Печать  
elle писал(а) 24. Октября 2011 :: 14:34:
Спасибо, выгружает, что означает RIGHT(Поставка,9)?

http://www.1csql.ru/materials/articles/develop.html~59d890ad-7ddb-f487-3aae-bcf7...
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #12 - 25. Октября 2011 :: 11:42
Печать  
berezdetsky писал(а) 24. Октября 2011 :: 14:41:
elle писал(а) 24. Октября 2011 :: 14:38:
Пожалуйста ссылку а последню версию тыкни Улыбка  может есть FAQ по конструктору, потому что пользуюсь им более на ослеп, чем осознано Смущённый

http://www.1cpp.ru/forum/YaBB.pl?num=1148127139. FAQ нету - интуитивно-"понятный" интерфейс..   Смех

Ну не всем интуитивно-"понятный" интерфейс Класс, что такое грязное чтение? (а что есть чистое чтение? Смех), где поставить условие фильтра? наверно у меня нету интуиции Смущённый Почему нету смайла "Я блондико" (лирическое отступление от теми)
Код
Выбрать все
|SELECT ПартииОстатки.МестоХранения [МестоХранения $Справочник]
	|, ПартииОстатки.ТМЦ [ТМЦ $Справочник.ТМЦ]
	|, ПартииОстатки.Поставка [Поставка $Документ]
	|, ПартииОстатки.ОстатокТовараОстаток ОстатокТовараОстаток
	|, ПартииОстатки.СтоимостьОстаток СтоимостьОстаток
	|, ПриходныйОрдерСтроки.МВЗ [МВЗ $Справочник.МВЗ]
	|FROM $РегистрОстатки.Партии(:КонПериода~,
	|INNER JOIN $ДокументСтроки.ПриходныйОрдер AS ПриходныйОрдерСтроки ON RIGHT(Поставка,9) = ПриходныйОрдерСтроки.IDDOC,
	|(RIGHT(Поставка,9) = ПриходныйОрдерСтроки.IDDOC)
	|АND (ТМЦ = $ПриходныйОрдерСтроки.ТМЦ)
	|AND (МестоХранения IN (SELECT val FROM #Sklad)),
	|	(МестоХранения, ТМЦ, Поставка, МВЗ),
	|	(ОстатокТовара, Стоимость)) AS ПартииОстатки
	|"; 


Ошибка - meta name parser error недопустимое значение параметра  "$РегистрОстатки.Партии" (4) . Я так понимаю документ и регистр так просто не соединить.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #13 - 25. Октября 2011 :: 12:04
Печать  
elle писал(а) 25. Октября 2011 :: 11:42:
Ну не всем интуитивно-"понятный" интерфейс Класс

Потому и в кавычках.  Улыбка

elle писал(а) 25. Октября 2011 :: 11:42:
что такое грязное чтение? (а что есть чистое чтение?

http://msdn.microsoft.com/ru-ru/library/ms190805.aspx

elle писал(а) 25. Октября 2011 :: 11:42:
где поставить условие фильтра?

На вкладке "Условие".

elle писал(а) 25. Октября 2011 :: 11:42:
Почему нету смайла "Я блондико"



elle писал(а) 25. Октября 2011 :: 11:42:
Ошибка - meta name parser error недопустимое значение параметра  "$РегистрОстатки.Партии" (4) . Я так понимаю документ и регистр так просто не соединить.

Просто, но не так. Нужно соединение ВТ с таблицей документа (снаружи ВТ). Конструктор построит его, если вывести МВЗ в список выбора.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #14 - 25. Октября 2011 :: 14:09
Печать  
Мой конструктор не коректно работает или мои ручки корявые Плачущий,  я так понимаю нужно делать еще Left join, но не понятно по чем связать, что опять регистр с приходным ордером? Смущённый
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #15 - 25. Октября 2011 :: 14:28
Печать  
Выложи описание структуры метаданных регистра Партии и документа ПриходныйОрдер.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #16 - 26. Октября 2011 :: 06:14
Печать  
Регистр остатков (Быстрая обработка движений- нет) идентификатор - Партии, Измерения - Фирма (Справочник.Фирмы), Счет (Счет.Основной), МестоХранения (Справочник), ТМЦ (Справочник.ТМЦ), Поставщик(Справочник.Контрагенты), Поставка(Документ), ПрихДокумент(Документ).
Ресурсы - ОстатокТовара(Число), Стоимость(Число), ПродСтоимость(Число).
Реквизиты - КодОперации(Строка).
Документ ПриходныйОрдер - Реквизиты шапки - МестоХранения(Правочник.МестаХранения), Реквизиты табличной части - ТМЦ(Справочник.ТМЦ), МВЗ(Справочник.МВЗ).
Было реализовано вот так:
Код
Выбрать все
Запрос = СоздатьОбъект("Запрос");
	ТекстЗапроса =
	"//{{ЗАПРОС(СформироватьТЗПартий)
	|с КонПериода по КонПериода;
	|Без итогов;
	|МестоХранения = Регистр.Партии.МестоХранения;
	|ТМЦ = Регистр.Партии.ТМЦ;
	|ПрихДокумент = Регистр.Партии.ПрихДокумент;
	|ОстатокТовара = Регистр.Партии.ОстатокТовара;
	|Стоимость = Регистр.Партии.Стоимость;
	|ТекущийДокумент = Регистр.Партии.ТекущийДокумент;
	|Функция ОТ_КонОст = КонОст(ОстатокТовара);
	|Функция С_КонОст = КонОст(Стоимость);
	|Группировка МестоХранения Без Групп;
	|Группировка ТМЦ Без Групп;
	|Группировка ПрихДокумент;
	|";
	Если ПустоеЗначение(ВыбМестоХранения) = 1 Тогда
		ТекстЗапроса=ТекстЗапроса+	"Условие (МестоХранения в СЗ);
		|";
	Иначе
		Если ВыбМестоХранения.ЭтоГруппа()=1 Тогда
			ТекстЗапроса=ТекстЗапроса+	"Условие(МестоХранения В ВыбМестоХранения);
			|";
		Иначе
			ТекстЗапроса=ТекстЗапроса+	"Условие(МестоХранения = ВыбМестоХранения);
			|";
		КонецЕсли;
	КонецЕсли; 


Потом выгражала список партий с этого запроса и уже искала нужные документы:
Код
Выбрать все
Запрос = СоздатьОбъект("Запрос");
	ТекстЗапроса =
	"//{{ЗАПРОС(СформироватьТЗПартий)
	|с (КонПериода-2000) по КонПериода;
	|Без итогов;
	|Док = мент;
	|МестоХранения = нения;
	|ТМЦ = Документ.ПриходныйОрдер.ТМЦ,Документ.АктОприходованияТМЦ.ТМЦ;
	|МВЗ = Документ.ПриходныйОрдер.МВЗ,Документ.АктОприходованияТМЦ.МВЗ;
	|Кво = Документ.ПриходныйОрдер.Кво,Документ.АктОприходованияТМЦ.Кво;
	|Группировка МестоХранения Без Групп;
	|Группировка ТМЦ Без Групп;
	|Группировка Док;
	|Группировка МВЗ Без Групп;
	|Группировка СтрокаДокумента;
	|Условие (Док в Партии);
	|";
	Если ПустоеЗначение(ВыбПоступленияИздержки) = 0 Тогда
		ТекстЗапроса=ТекстЗапроса+	"Условие(СтатьяБДДС = ВыбПоступленияИздержки);
		|";
	КонецЕсли; 


Еще проблема бывает что в приходном ордере в табл. части две одинаковые ТМЦ с разными МВЗ, тогда в одну строку записывала два МВЗ. Запустив отчет поиска по всем партиям нужного МВЗ можна было уходить на пол часа, а МВЗ у нас штук 30 Смущённый
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Как объединить регист с документом?
Ответ #17 - 26. Октября 2011 :: 06:33
Печать  
Не вкурил, а какое отношение приход денег имеет к Партиям ??
  
Наверх
 
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #18 - 26. Октября 2011 :: 07:55
Печать  
а где вы увидели приход денег? мвз-места возникновения затрат Улыбка
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Как объединить регист с документом?
Ответ #19 - 26. Октября 2011 :: 08:34
Печать  
ПриходныйОрдер всегда был для приёма денег.
Какое отношение к партиям тмц он имеет ?
  
Наверх
 
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #20 - 26. Октября 2011 :: 08:47
Печать  
У нас приход от поставщиков оформляется на склад как приходный ордер + приходная накладная в бухгалтерию.
"Организация складского ордерного учета
Организация складского учета с использованием ордеров позволяет в разные моменты времени фиксировать в автоматизированной системе движения ТМЦ в количественном измерении и отражение этих движений в суммовом выражении. Документы, которыми оформляют движения ТМЦ по складу, называют ордера-ми на товары («Приходный ордер на товары», «Расходный ордер на товары»). "
А приход денег по касе как раз приходным кассовым ордером.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #21 - 26. Октября 2011 :: 13:21
Печать  
Код
Выбрать все
	ТекстЗапроса = "-- qryMaker:Отчет1.2011.10.26.16.24.32
		|SELECT ПартииОстатки.МестоХранения [ПартииОстаткиМестоХранения $Справочник]
		|	, ПартииОстатки.ТМЦ [ПартииОстаткиТМЦ $Справочник.ТМЦ]
		|	, ПартииОстатки.Поставка [Поставка $Документ]
		|	, ПартииОстатки.ОстатокТовараОстаток
		|	, ПартииОстатки.СтоимостьОстаток
		|	, Подзапрос.МВЗ [МВЗ $Справочник.МВЗ]
		|FROM (SELECT
		|			  ($ВидДокумента36.ПриходныйОрдер + ПриходныйОрдер.IDDOC) Поставка
		|			, $ПриходныйОрдер.МестоХранения МестоХранения
		|			, $ПриходныйОрдерСтроки.ТМЦ ТМЦ
		|			, $ПриходныйОрдерСтроки.МВЗ МВЗ
		|		FROM $Документ.ПриходныйОрдер AS ПриходныйОрдер With (NOLOCK)
		|			INNER JOIN $ДокументСтроки.ПриходныйОрдер AS ПриходныйОрдерСтроки With (NOLOCK) ON ПриходныйОрдер.IDDOC = ПриходныйОрдерСтроки.IDDOC
		|		UNION ALL
		|		SELECT
		|			  ($ВидДокумента36.АктОприходованияТМЦ + АктОприходованияТМЦ.IDDOC)
		|			, $АктОприходованияТМЦ.НовоеМестоХранения
		|			, $АктОприходованияТМЦСтроки.ТМЦ
		|			, $АктОприходованияТМЦСтроки.МВЗ
		|		FROM $Документ.АктОприходованияТМЦ AS АктОприходованияТМЦ With (NOLOCK)
		|			INNER JOIN $ДокументСтроки.АктОприходованияТМЦ AS АктОприходованияТМЦСтроки With (NOLOCK) ON АктОприходованияТМЦ.IDDOC = АктОприходованияТМЦСтроки.IDDOC) AS Подзапрос
		|	INNER JOIN $РегистрОстатки.Партии(:КонДата ~,,
		|		(МестоХранения = :ВыбМестоХранения),
		|		(МестоХранения, ТМЦ, Поставка),
		|		(ОстатокТовара, Стоимость)) AS ПартииОстатки ON Подзапрос.ТМЦ = ПартииОстатки.ТМЦ AND Подзапрос.Поставка = ПартииОстатки.Поставка
		|WHERE (Подзапрос.МВЗ = :ВыбМВЗ)
		|";
 

  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #22 - 27. Октября 2011 :: 08:08
Печать  
Спасибо  Улыбка, но ТЗ у меня пустая, хотя запрос работает, в чем может быть причина?
После запроса делаю
Код
Выбрать все
RS.УстановитьТекстовыйПараметр("КонДата", КонПериода);
	RS.УстановитьТекстовыйПараметр("ВыбМестоХранения", ВыбМестоХранения);
	RS.УстановитьТекстовыйПараметр("ВыбМВЗ", ВыбМВЗ);
	RS.Отладка(1);
	ТЗ = RS.ВыполнитьИнструкцию(ТекстЗапроса);
	ТЗНаФорме.Загрузить(ТЗ); 

  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #23 - 27. Октября 2011 :: 09:17
Печать  
Я ошибся в условии. Должно быть:
Код
Выбрать все
|		(МестоХранения = :ВыбМестоХранения ~), 

  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #24 - 27. Октября 2011 :: 09:22
Печать  
ОГОГО, как все меняет крохотный символ ~, ЗАРАБОТАЛО, УРАААА Очень довольный Как динамично условие (МестоХранения = :ВыбМестоХранения ~) менять чтобы например равно справочнику или пренадлежало списку или групе справочника?
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #25 - 27. Октября 2011 :: 09:29
Печать  
Код
Выбрать все
МестоХранения IN (SELECT $ВидСправочника36.МестаХранения + val FROM #МестаХранения) 



Код
Выбрать все
RS.УложитьСписокОбъектов(СписокИлиГруппа, "#МестаХранения", "МестаХранения"); 

  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #26 - 27. Октября 2011 :: 12:06
Печать  
Улыбка, как посоветуеш решыть проблему - по одной партии приходного ордера возможный приход одинакого ТМЦ по разным МВЗ, по факту например товара А 100 шт. по разным МВЗ, сформировав отчет по одному МВЗ покажет 100 шт., потом по другому МВЗ и опять 100 шт. и в итоге выйдет 200 шт, а в реале только 100.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #27 - 27. Октября 2011 :: 12:19
Печать  
Проблема не имеет смысла, если нет привязки к МВЗ в расходных документах. А если такая привязка есть - нужно добавить МВЗ как измерение регистра.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #28 - 27. Октября 2011 :: 12:35
Печать  
Я понимаю что ето полная ерунда выходить без измерения в регистре, но даже если сделать реквизитом МВЗ, старые документы не перепроведеш. Раньше я выдавала по ТМЦ где 2 разных МВЗ предуприждение, что б в ручном режыме проверить на правильность, в запросе можна ето сделать?
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как объединить регист с документом?
Ответ #29 - 27. Октября 2011 :: 13:01
Печать  
Можно сложить данные документов во временную таблицу и получать оттуда списки МВЗ по мере обхода остатков.

http://oldskola1.narod.ru/Rus1.htm#p34
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
elle
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 15
Зарегистрирован: 21. Октября 2011
Re: Как объединить регист с документом?
Ответ #30 - 27. Октября 2011 :: 13:21
Печать  
Я знаю что моя грамматика ужасна, в нашем городе нет  русских школ, на русском разговаривают где-то 5 % населения, разговорный русский у меня еще может быть, а вот что написать достаточно тяжело. Сори. Мне стыдно Смущённый
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать