Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / Выборка значений реквизитов из документов в 1С:Предприятии 8.2 / 12 сообщений из 12, страница 1 из 1
27.10.2011, 04:30
    #37499959
sergeyermak
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
Добрый день!

У меня возникла такая проблема:

Нужно выбрать из документа НачислениеОтпускаРаботникамОрганизаций значение реквизита ДниОтпуска и вывести их в табличный документс группировкой по сотрудникам организации.

При использовании Схемы компоновки данных у меня вышел такой вот запрос, который работает:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
ВЫБРАТЬ
	НачислениеОтпускаРаботникамОрганизаций.Начисления.(
		Сотрудник,
		СУММА(ОплаченоДнейЧасов)
	)
ИЗ
	Документ.НачислениеОтпускаРаботникамОрганизаций КАК НачислениеОтпускаРаботникамОрганизаций
		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
		ПО НачислениеОтпускаРаботникамОрганизаций.Сотрудник = СотрудникиОрганизаций.Ссылка

СГРУППИРОВАТЬ ПО
	НачислениеОтпускаРаботникамОрганизаций.Начисления.(Сотрудник)

И его внешняя форма
http://upload.net.ua/thumbs/8966491.JPG

Но мне не устаивает использование Схемы компоновки данных, то есть мне надо иметь возможность еще работать с полученными из запроса параметрами.
Поэтому отчет я делаю программно, но в этом варианте ничего не выводиться на екран:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Запрос.Текст = "ВЫБРАТЬ 
				  |	НачислениеОтпускаРаботникамОрганизаций.Начисления.(Сотрудник, СУММА(ОплаченоДнейЧасов)) КАК РезервОтпуска
				  |	НачислениеОтпускаРаботникамОрганизаций.Начисления.(Сотрудник) КАК Сотрудники
				  |ИЗ
	|Документ.НачислениеОтпускаРаботникамОрганизаций КАК НачислениеОтпускаРаботникамОрганизаций
	|ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
	|	ПО НачислениеОтпускаРаботникамОрганизаций.Сотрудник = СотрудникиОрганизаций.Ссылка
	|
	|СГРУППИРОВАТЬ ПО
	|НачислениеОтпускаРаботникамОрганизаций.Начисления.(Сотрудник)";
Результат = Запрос.Выполнить().Выбрать();
	
	Пока Результат.Следующий() Цикл
					ОбработкаПрерыванияПользователя();
					СтрОснова = Макет.ПолучитьОбласть("Основа");
					//СтрОснова.Параметры.Сотрудники = Результат.Сотрудники;
					СтрОснова.Параметры.РезервОтпуска = Результат.РезервОтпуска;
					ТабДокумент.Вывести(СтрОснова);

Помогите плиз
Или бросьте ссылку где можно посмотреть на примеры построения сложных запросов из документов.
Заранее благодарен.
...
Рейтинг: 0 / 0
27.10.2011, 10:34
    #37500201
DmitriyZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
sergeyermak, ничего не понял, работает или не работает?
...
Рейтинг: 0 / 0
27.10.2011, 11:11
    #37500292
sergeyermak
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
DmitriyZ,

Второй вариант запроса не работает, а первый как пример, но он работает только в Схеме Компоновки
...
Рейтинг: 0 / 0
27.10.2011, 11:15
    #37500303
Сисой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
Совет.
Никогда не работать с табличными частями через основную таблицу.
Перепиши запрос на:
Код: plaintext
1.
2.
3.
ИЗ
Документ.НачислениеОтпускаРаботникамОрганизаций.Начисления КАК Начисления
....
...
Рейтинг: 0 / 0
27.10.2011, 11:19
    #37500317
DmitriyZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
sergeyermakDmitriyZ,

Второй вариант запроса не работает, а первый как пример, но он работает только в Схеме Компоновки Запрос что то возвращает? Если возвращает, покажите ВЕСЬ код, которым заполняется таб. документ.
...
Рейтинг: 0 / 0
28.10.2011, 19:41
    #37503389
sergeyermak
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
Спасибо за помощь
Разобрался
Вот как должно быть
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Запрос.Текст = "ВЫБРАТЬ 
	|	НачислениеОтпускаРаботникамОрганизаций.Сотрудник КАК Сотрудник,
	|	СУММА(НачислениеОтпускаРаботникамОрганизаций.ОплаченоДнейЧасов) КАК РезервОтпуска
		|ИЗ
	|    Документ.НачислениеОтпускаРаботникамОрганизаций.Начисления КАК НачислениеОтпускаРаботникамОрганизаций
	|ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
	|	ПО НачислениеОтпускаРаботникамОрганизаций.Сотрудник = СотрудникиОрганизаций.Ссылка
	|
	|СГРУППИРОВАТЬ ПО
	|НачислениеОтпускаРаботникамОрганизаций.Сотрудник
	|УПОРЯДОЧИТЬ ПО
	|Сотрудник";

И еще вопросик

Как можно сделать выборку сразу из двух документов одновременно, то есть

ИЗ Документа1 и Документа2

(То есть как это представить синтаксически)
...
Рейтинг: 0 / 0
31.10.2011, 10:17
    #37504834
AHDP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
Сделать два запроса и объеденить их результаты через "Объеденить".
...
Рейтинг: 0 / 0
01.11.2011, 09:53
    #37506240
Igor Glushaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
sergeyermak,

У тебя твой запрос работает сейчас сразу по всем документам? (мне так по коду запроса показалось)...
Если да, то добавляешь в запрос кусок типа " Где Ссылка в &Документ", ну а параметр запроса документ пихаешь список документов, по которым тебе нужно делать выборку...
...
Рейтинг: 0 / 0
02.11.2011, 05:21
    #37507785
sergeyermak
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
спасибо за помощь

Но вот еще одна проблема:

У меня есть маленький вопросик, возможно ли вывести эти два запроса (выборки) (по отдельности все работает):

Первый запрос(выборка) (основная):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
	Запрос.Текст = "ВЫБРАТЬ 
	|	НачислениеОтпускаРаботникамОрганизаций.Сотрудник КАК Сотрудник,
	|	СУММА(НачислениеОтпускаРаботникамОрганизаций.ОплаченоДнейЧасов) КАК РезервОтпуска,
	|   СотрудникиОрганизаций.Резерв2010 КАК Резерв2010
	|ИЗ
	|    Документ.НачислениеОтпускаРаботникамОрганизаций.Начисления КАК НачислениеОтпускаРаботникамОрганизаций	
	|	ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
	|	ПО НачислениеОтпускаРаботникамОрганизаций.Сотрудник = СотрудникиОрганизаций.Ссылка
	|     ГДЕ 
	|    НачислениеОтпускаРаботникамОрганизаций.Ссылка.Дата Между &ДатаНач и &ДатаКон	
	|
	|СГРУППИРОВАТЬ ПО
	|НачислениеОтпускаРаботникамОрганизаций.Сотрудник,
	|СотрудникиОрганизаций.Резерв2010
	|УПОРЯДОЧИТЬ ПО
	|НачислениеОтпускаРаботникамОрганизаций.Сотрудник ВОЗР
	|АВТОУПОРЯДОЧИВАНИЕ";

И вторая выборка:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
	ТекстЗапроса_Сотрудник = "ВЫБРАТЬ 
	|	Начисления.Сотрудник КАК СотрудникиНач,
	|       СУММА(Начисления.Результат) КАК РезультатСреднего
        |	
	|ИЗ
	|	 РегистрРасчета.Начисления КАК Начисления
	|
	|СГРУППИРОВАТЬ ПО
	|Начисления.Сотрудник";

Или выполнить их одновременно через левое соединение?

Пытался в конструкторе, но ничего не вышло.

Заранее спасибо за помощь.
...
Рейтинг: 0 / 0
02.11.2011, 05:26
    #37507786
sergeyermak
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
То есть не могу понять как синхронизировать эти два запроса по Сотрудникам, так как таблица одна и список сотрудников тянеться с первой выборки.
...
Рейтинг: 0 / 0
02.11.2011, 11:02
    #37508044
AHDP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
Указать в запросе таблицу с иным алиасом.

ИЗ
РегистрРасчета.Начисления КАК Начисления1
Join РегистрРасчета.Начисления КАК Начисления2 On Начисления1.Сотрудник = Начисления2.Сотрудник
Сгруппировать По Начисления1.Сотрудник
...
Рейтинг: 0 / 0
04.11.2011, 04:16
    #37511494
sergeyermak
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка значений реквизитов из документов в 1С:Предприятии 8.2
Всем спасибо за помощь.

Я все таки поборол этот запрос, вот он кому интересно:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
Запрос = Новый Запрос();
 Запрос.Текст = "ВЫБРАТЬ
 |    НачислениеОтпускаРаботникамОрганизаций.Сотрудник КАК Сотрудник,
 |    СУММА(НачислениеОтпускаРаботникамОрганизаций.ОплаченоДнейЧасов) КАК РезервОтпуска,
 |    СотрудникиОрганизаций.Резерв2010 КАК Резерв2010
 |ПОМЕСТИТЬ ОсновнаяВыборка
 |ИЗ
 |    Документ.НачислениеОтпускаРаботникамОрганизаций.Начисления КАК НачислениеОтпускаРаботникамОрганизаций
 |	ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
 |	ПО НачислениеОтпускаРаботникамОрганизаций.Сотрудник = СотрудникиОрганизаций.Ссылка
 |ГДЕ
 |    НачислениеОтпускаРаботникамОрганизаций.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон
 |
 |СГРУППИРОВАТЬ ПО
 |    НачислениеОтпускаРаботникамОрганизаций.Сотрудник,
 |    СотрудникиОрганизаций.Резерв2010
 |;
 |
 |////////////////////////////////////////////////////////////////////////////////

 |ВЫБРАТЬ
 |    Начисления.Сотрудник КАК СотрудникиНач,
 |    СУММА(Начисления.Результат) КАК РезультатСреднего
 |ПОМЕСТИТЬ НачисленияРезультат
 |ИЗ
 |    РегистрРасчета.Начисления КАК Начисления
 |ГДЕ
 |    Начисления.ПериодРегистрации МЕЖДУ ДОБАВИТЬКДАТЕ(&ДатаКон, МЕСЯЦ, -12) И &ДатаКон
 |
 |СГРУППИРОВАТЬ ПО
 |    Начисления.Сотрудник
 |;
 |
 |////////////////////////////////////////////////////////////////////////////////
 |ВЫБРАТЬ
 |    ОсновнаяВыборка.Сотрудник КАК Сотрудник,
 |    ОсновнаяВыборка.РезервОтпуска - ОсновнаяВыборка.Резерв2010 КАК РезервРазница,
 |    ЕСТЬNULL(НачисленияРезультат.РезультатСреднего, 0) КАК РезультатСреднего
 |ИЗ
 |    ОсновнаяВыборка КАК ОсновнаяВыборка
 |        ЛЕВОЕ СОЕДИНЕНИЕ НачисленияРезультат КАК НачисленияРезультат
 |        ПО ОсновнаяВыборка.Сотрудник = НачисленияРезультат.СотрудникиНач
 |
 |УПОРЯДОЧИТЬ ПО
 |    Сотрудник
 |АВТОУПОРЯДОЧИВАНИЕ";
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Выборка значений реквизитов из документов в 1С:Предприятии 8.2 / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]