|
Запрос заполнение подписей в макете. | ☑ | ||
---|---|---|---|---|
0
greenyes1c
07.10.14
✎
10:26
|
В Приходном ордере нужно было сделать авто заполнение подписей в графе принял (ДолжностьМОЛ и ФИОМОЛ).Я сделал запрос для вывода должности кладовщик и его ФИО,как сделать так чтобы по запросу выбирались все должности которые имеются в списке должностей(ну и их фамилии)?Помогите пожалуйста)
Должность = Справочники.ДолжностиОрганизаций.Выбрать( ВСЕ ) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ОтветственныеЛицаОрганизацийСрезПоследних.Период, | ОтветственныеЛицаОрганизацийСрезПоследних.СтруктурнаяЕдиница, | ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо, | ОтветственныеЛицаОрганизацийСрезПоследних.Должность |ИЗ | РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних КАК ОтветственныеЛицаОрганизацийСрезПоследних |ГДЕ | ОтветственныеЛицаОрганизацийСрезПоследних.Должность = &Кладовщик"; Запрос.УстановитьПараметр("Кладовщик", Кладовщик); РезультатЗапроса = Запрос.Выполнить().Выгрузить(); Если РезультатЗапроса.Количество()>0 Тогда Должность = РезультатЗапроса[0].Должность; ФиоКладовщика =РазложитьСтрокуВМассивПодстрок(СокрЛП(РезультатЗапроса[0].ФизическоеЛицо)," "); Фамилия = ФиоКладовщика[0]; Имя = Лев(ФиоКладовщика[1],1); Отчество = Лев(ФиоКладовщика[2],1); ФиоКладовщика = Фамилия + " "+ Имя +". " + Отчество+"."; КонецЕсли; |
|||
1
xXeNoNx
07.10.14
✎
10:29
|
РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних(,Должность В(&СписокДолжностей))
|
|||
2
xXeNoNx
07.10.14
✎
10:30
|
Условие "ГДЕ" - это не правильно
|
|||
3
greenyes1c
07.10.14
✎
10:31
|
Если не сложно можешь исправить код?
|
|||
4
xXeNoNx
07.10.14
✎
10:35
|
ВЫБРАТЬ
ОтветственныеЛицаОрганизацийСрезПоследних.Период, ОтветственныеЛицаОрганизацийСрезПоследних.СтруктурнаяЕдиница, ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо, ОтветственныеЛицаОрганизацийСрезПоследних.Должность ИЗ РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних КАК ОтветственныеЛицаОрганизацийСрезПоследних(,Должность В(&СписокДолжностей)) |
|||
5
xXeNoNx
07.10.14
✎
10:39
|
Наверное как-то так, не помню синтаксис СрезПоследних
ВЫБРАТЬ ОтветственныеЛицаОрганизацийСрезПоследних.Период, ОтветственныеЛицаОрганизацийСрезПоследних.СтруктурнаяЕдиница, ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо, ОтветственныеЛицаОрганизацийСрезПоследних.Должность ИЗ РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних(,Должность В(&СписокДолжностей)) КАК ОтветственныеЛицаОрганизацийСрезПоследних |
|||
6
greenyes1c
07.10.14
✎
10:40
|
А в остальном код запроса правильный?
|
|||
7
xXeNoNx
07.10.14
✎
10:42
|
Срез последних устанавливать на дату документа, Период - не нужен, т.к. если будут изменения ответственных лиц, запрос выберет и прошлые
|
|||
8
greenyes1c
07.10.14
✎
10:45
|
А заместо кладовщик мне что прописать? "Должность"? или "ВСЕ"
|
|||
9
xXeNoNx
07.10.14
✎
10:46
|
Должность = РезультатЗапроса[0].Должность;
РезультатЗапроса[0] - обращение к ТЗ с указанием конкретной строки - тож не очень правильно |
|||
10
xXeNoNx
07.10.14
✎
10:48
|
(8) Тебе же надо все должности, зачем тебе кладовщик, после работы запроса получишь список должностных лиц, которые содержит регистр сведений.
|
|||
11
Fish
07.10.14
✎
10:49
|
(0) А что такое "ВСЕ" в твоей строке:
"Должность = Справочники.ДолжностиОрганизаций.Выбрать( ВСЕ )"? |
|||
12
xXeNoNx
07.10.14
✎
10:50
|
Даже запрос вот такой получится
ВЫБРАТЬ ОтветственныеЛицаОрганизацийСрезПоследних.Период, ОтветственныеЛицаОрганизацийСрезПоследних.СтруктурнаяЕдиница, ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо, ОтветственныеЛицаОрганизацийСрезПоследних.Должность ИЗ РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних КАК ОтветственныеЛицаОрганизацийСрезПоследних без указания условий, получишь все должности, а потом анализируй |
|||
13
xXeNoNx
07.10.14
✎
10:51
|
без периода правда
|
|||
14
greenyes1c
07.10.14
✎
10:51
|
Должность = Справочники.ДолжностиОрганизаций.Выбрать( ВСЕ )
А в этой строчке как обозначить? До этого у меня везде кладовщик стоял тк поиск по наименованию ставил.А здесь что поставить? |
|||
15
xXeNoNx
07.10.14
✎
10:53
|
А зачем тебе это?
Должность = Справочники.ДолжностиОрганизаций.Выбрать( ВСЕ ) |
|||
16
greenyes1c
07.10.14
✎
10:54
|
Не знаю.Пробовал методом тыка..Эту строчку я удаляю получается?
|
|||
17
greenyes1c
07.10.14
✎
10:55
|
Просто в дальнейшем в строке Запрос.УстановитьПараметр("Должность", ВСЕ);
у меня выбивает ошибку,что переменная не определена. |
|||
18
xXeNoNx
07.10.14
✎
10:56
|
1. Есть приходный ордер, там надо заполнить поля
2. Можно в запрос передать список должностей, которые ты заранее находишь, можно после 3. Если передаешь списком в запрос все должности, на выходе из запроса получаешь нужные тебе данные, если не передаешь списком, то постобработкой находишь те должности, которые нужны 4. Заполняешь найденые реквизиты в документе |
|||
19
xXeNoNx
07.10.14
✎
10:58
|
эту удаляй, другие добавляй, те по которым будешь искать нужные должности
|
|||
20
greenyes1c
07.10.14
✎
11:00
|
Недавно начал изучать 1С.Если вам не сложно,не могли бы вы написать правильный код.Был бы вам премного благодарен за это.Думаю вам как профессионалу это пара минут.
|
|||
21
xXeNoNx
07.10.14
✎
11:02
|
(20) Смысла нет, ЗП же ты будешь получать, вот и учись. Что бы было за что получать)
|
|||
22
Fish
07.10.14
✎
11:05
|
(20) Предлагаю открыть для себя СП. Там много интересного написано, в частности и по поводу параметров, передаваемых в методы и функции. А вот что не получится после прочтения, спрашивай.
|
|||
23
greenyes1c
07.10.14
✎
11:07
|
не проканало)Эх.Да уже показывать нужно через пару часов,а у меня до сих не получается.Сейчас пороюсь там)
|
|||
24
Fish
07.10.14
✎
11:09
|
(23) "показывать нужно через пару часов" - Собеседование что ли проходишь? :)
|
|||
25
Fish
07.10.14
✎
11:11
|
(23) Ещё, кстати, можно порыться в типовых конфигурациях (если есть под рукой), и посмотреть, как там это реализовано.
|
|||
26
greenyes1c
07.10.14
✎
11:14
|
Да)Не подумайте,что я лентяй.Просто самому иногда трудновато.Нужен человек который покажет ,что нужно нажать сюда и сюда,и это работает.Недавно сидел два дня и кумекал,оказалось что в одном месте нужно было СсылкаНаОбъект поставить и все заработало.А программистов 1с к сожалению нет в моем окружении.Приходится вам надоедать.
|
|||
27
Fish
07.10.14
✎
11:23
|
(26) "в одном месте нужно было СсылкаНаОбъект поставить и все заработало." - вот это как раз обычно и написано в СП - что и куда нужно ставить. Нужно только не лениться прочитать.
|
|||
28
greenyes1c
07.10.14
✎
11:51
|
И все равно не понятненько.Кто поможет составить запрос,подарю вкусных печенек =)
|
|||
29
xXeNoNx
07.10.14
✎
12:14
|
(28) Хм.., за печенья...., опускаюсь, за еду так сказать...
Конкретизируй вопрос! |
|||
30
xXeNoNx
07.10.14
✎
12:15
|
+(29) Т.к. решение я тебе написал уже
|
|||
31
xXeNoNx
07.10.14
✎
12:17
|
Конфа какая?
|
|||
32
Ненавижу 1С
гуру
07.10.14
✎
12:19
|
(28) наконец-то печеньки!
ВЫБРАТЬ ОтветственныеЛицаОрганизацииСрезПоследних.ОтветственноеЛицо, ОтветственныеЛицаОрганизацииСрезПоследних.Должность, ОтветственныеЛицаОрганизацииСрезПоследних.ФизическоеЛицо ИЗ РегистрСведений.ОтветственныеЛицаОрганизации.СрезПоследних(&НаДату, СтруктурнаяЕдиница = &СтурктурнаяЕдиница) КАК ОтветственныеЛицаОрганизацииСрезПоследних |
|||
33
greenyes1c
07.10.14
✎
12:21
|
Кладовщик = Справочники.ДолжностиОрганизаций.НайтиПоНаименованию("Кладовщик");
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ОтветственныеЛицаОрганизацийСрезПоследних.Период, | ОтветственныеЛицаОрганизацийСрезПоследних.СтруктурнаяЕдиница, | ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо, | ОтветственныеЛицаОрганизацийСрезПоследних.Должность |ИЗ | РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних КАК ОтветственныеЛицаОрганизацийСрезПоследних"; РезультатЗапроса = Запрос.Выполнить().Выгрузить(); Если РезультатЗапроса.Количество()>0 Тогда Должность = РезультатЗапроса[0].Должность; ФиоКладовщика =РазложитьСтрокуВМассивПодстрок(СокрЛП(РезультатЗапроса[0].ФизическоеЛицо)," "); Фамилия = ФиоКладовщика[0]; Имя = Лев(ФиоКладовщика[1],1); Отчество = Лев(ФиоКладовщика[2],1); ФиоКладовщика = Фамилия + " "+ Имя +". " + Отчество+"."; КонецЕсли; Конкретизирую.Что тут нужно исправить,чтобы выводились все должности. |
|||
34
greenyes1c
07.10.14
✎
12:22
|
Конфа Бухгалтерия предприятия, редакция 2.0 (2.0.58.6)
|
|||
35
xXeNoNx
07.10.14
✎
12:24
|
(32) Мля, стопэ, в очередь
|
|||
36
xXeNoNx
07.10.14
✎
12:24
|
(33) Выводились куда?
|
|||
37
xXeNoNx
07.10.14
✎
12:25
|
(34) Конфа какая?
|
|||
38
greenyes1c
07.10.14
✎
12:29
|
Есть внешняя печатная форма М4.Приходный ордер,нужно чтобы в строке Принял ячейки ДолжностьМОЛ (сотрудники организаций)и ФИОМОЛ (справочник склады)автоматически заполнялись.
|
|||
39
greenyes1c
07.10.14
✎
12:32
|
Сейчас с этим запросом у меня заполняется лишь с должностью кладовщик.Как сделать так,чтобы там выводились все остальные должности.(Ответственные лица)
|
|||
40
xXeNoNx
07.10.14
✎
12:39
|
ща нарисуем
|
|||
41
greenyes1c
07.10.14
✎
12:40
|
xXeNoNx,если это заработает.Скинешь почтовый ящик.Обговорим вопросы передачи печенья.
|
|||
42
greenyes1c
07.10.14
✎
12:56
|
Дружище,печеньки остывают)
|
|||
43
xXeNoNx
07.10.14
✎
13:30
|
Глобальным поиском ищешь функцию:
ДанныеФизЛица(Организация, ОтветственноеЛицо, Дата) Вызываешь ее и она тебе возвращает структуру с МОЛ, дальше используешь так ДанныеМОЛ = ДанныеФизЛица(Организация, ОтветственноеЛицо, Дата); ДанныеМОЛ.Должность ДанныеМОЛ.Представление |
|||
44
xXeNoNx
07.10.14
✎
13:31
|
+(43) Перемнные Оранизация, ОтветственноеЛицо, Дата
Берешь из запроса выше. |
|||
45
xXeNoNx
07.10.14
✎
13:32
|
(44) Это все вместо твоего запроса.
Забей в глобальный поиск "ДанныеФизЛица(" |
|||
46
greenyes1c
07.10.14
✎
13:45
|
А как все это в виде кода изобразить...?Я совсем не понимаю..
|
|||
47
xXeNoNx
07.10.14
✎
13:55
|
Процедуру пришли полностью
|
|||
48
xXeNoNx
07.10.14
✎
14:05
|
(46) Ты даешь часть кода, тебе частью и отвечают
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |