![]() |
|
v7: Как с помощью справочника сотр получить значение свойства реквизита | ☑ | ||
---|---|---|---|---|
0
ЮлияКорж
29.02.12
✎
10:08
|
Справочник Сотрудник.ДокументОкончания как мне получить например значение реквизита причина увольнения, чтобы не писать док.ВыбратьДокументы()док.ПолучитьДокумент()>0
|
|||
1
Mikeware
29.02.12
✎
10:11
|
Хроники Амбера....
|
|||
2
НЕА123
29.02.12
✎
10:13
|
Весна.
|
|||
3
ДенисЧ
29.02.12
✎
10:17
|
Периодический...
|
|||
4
Эльниньо
29.02.12
✎
10:35
|
Итак:
Справочник Сотрудник.ДокументОкончания.ХроникиАмбера.Весна.Периодический Делов то. |
|||
5
miki
29.02.12
✎
10:37
|
вариант:
Справочник Сотрудник.ДокументОкончания.ХроникиАмбера.Получить(Весна) |
|||
6
ЮлияКорж
29.02.12
✎
10:46
|
В моем случае как?
Сотр.ДокументОкончания. |
|||
7
NemeL
29.02.12
✎
10:50
|
(6)помоему неочень понятно что конкретно надо сделать
|
|||
8
ЮлияКорж
29.02.12
✎
10:52
|
Надо получить через справочник Сотр значение реквизита документа увольнения "ПричинаУвольнения " можно ли чтобы не открывать выборку по документу
|
|||
9
Рэйв
29.02.12
✎
10:55
|
(8)Понятие оператора "точка" объяснить или не надо?
|
|||
10
ЮлияКорж
29.02.12
✎
10:59
|
Не надо,я знаю
|
|||
11
Mikeware
29.02.12
✎
11:00
|
(6) может, программиста позовете?
|
|||
12
ЮлияКорж
29.02.12
✎
11:09
|
Не надо я справлюсь
|
|||
13
Evpatiy
29.02.12
✎
11:13
|
"Интересы: web программирование ASP.Net"
гыыыы |
|||
14
ЮлияКорж
29.02.12
✎
11:17
|
Гы гы кай,чего я писала интернет-магазин на с#
А вообще я написала вопрос не для того что бы обсуждать свои знания в программировании и для предприятия своего с работой я справляюсь в полной мере и в поставленные сроки, а сейчас дорабатываю восьмерку ЗУП по своё предприятия |
|||
15
aka AMIGO
29.02.12
✎
11:17
|
а что удивительного? представь, ей сказал шеф: "программистка? - вот и займись программированием в 1с.."
отвертишься? :) |
|||
16
aka AMIGO
29.02.12
✎
11:18
|
(14)так у тебя вопрос по 8-ке? а почему в сабже 7 ?
|
|||
17
Kreont
29.02.12
✎
11:19
|
||||
18
ЮлияКорж
29.02.12
✎
11:20
|
Моя проблема я не могу корректно поставить вопрос и без тебя знаю
|
|||
19
Evpatiy
29.02.12
✎
11:21
|
правильно, так их, хамов, матом, матом, да по матери, тогда точно подскажут :D
|
|||
20
aka AMIGO
29.02.12
✎
11:22
|
(18)а у вас в мариуполе не говорят "вопрос по 7 и 8 - это две большие разницы"?
|
|||
21
Evpatiy
29.02.12
✎
11:23
|
Ты же красивый девушка, зачем тебе этот 1С-шмадинес? Скушай лучше персик
|
|||
22
aka AMIGO
29.02.12
✎
11:23
|
(19)я не хамил. в (16) вполне законный вопрос.
ТС хочет грубить - да ради бога!.. |
|||
23
aka AMIGO
29.02.12
✎
11:23
|
+22 мог-бы подправить, а сейчас мне - до лампочки.
|
|||
24
Рэйв
29.02.12
✎
11:23
|
(18)У тебя есть ссылка на документ.Через точку от нее, как и от любой ссылки, можно взять любой реквизит. Странно как ты вообще программируешь на 1С, не говоря уж про все остальное...
|
|||
25
zak555
29.02.12
✎
11:24
|
(14) покажи магаз
|
|||
26
ЮлияКорж
29.02.12
✎
11:30
|
Вообще будем проще вот мой код я бы хотела поставить условия выдавать количество уволенных сотрудников в разрезе возрастов у которых причина увольнения <> "В связи со смертью" и там ещё несколько причин Со справочника сотр я хотела бы обратиться к докуувол.причинаУвольнения, а я не могу выбивает исключение открывать выборку по доку глупо, я хотела услышать оптимальный вариант как
Функция ОпределениеЛет(ДатаР,ДатаА) ГодР = ДатаГод(ДатаР); МесР = ДатаМесяц(ДатаР); ЧслР = ДатаЧисло(ДатаР); ГодА = ДатаГод(ДатаА); МесА = ДатаМесяц(ДатаА); ЧслА = ДатаЧисло(ДатаА); Лет = Цел(((ГодА-ГодР)*12+МесА-МесР)/12); Возврат Лет; КонецФункции Процедура Выполнить() Перем Рез,НачалоТекущегоПериода, КонецТекущегоПериода,ДатаР,ДатаА,Год,пр; НачалоТекущегоПериода = Дата1; КонецТекущегоПериода = Дата2 + 1; Год=ДатаГод(Дата2); таб=СоздатьОбъект("Таблица"); таб.ИсходнаяТаблица("Возраст"); ДокОкон=СоздатьОбъект("Документ.ПриказОбУвольнении"); Сотр=СоздатьОбъект("Справочник.Сотрудники"); Сотр.ВыбратьЭлементы(); кол_20=0; кол_2130=0; кол_3140=0; кол_4150=0; кол_51=0; Пока Сотр.ПолучитьЭлемент()>0 Цикл ДатаР=Сотр.ТекущийЭлемент().ФизическоеЛицо.ДатаРождения; ДатаА=Сотр.ТекущийЭлемент().ДатаОкончанияДействия; ДокОкон.ВыбратьДокументы(); Пока ДокОкон.ПолучитьДокумент()>0 Цикл //ДокОкон.ПричинаУвольнения Если ПустоеЗначение(ДатаА)=0 Тогда Если((ДатаА>=НачалоТекущегоПериода) И (ДатаА<КонецТекущегоПериода)) Тогда Рез=ОпределениеЛет(ДатаР,ДатаА); Если (Рез<1) Тогда Рез=Рез*(-1); КонецЕсли; Если (Рез<=20) Тогда кол_20=кол_20+1; КонецЕсли; Если (Рез>=21) и (Рез<=30) Тогда кол_2130=кол_2130+1; КонецЕсли; Если (Рез>=31) и (Рез<=40) Тогда кол_3140=кол_3140+1; КонецЕсли; Если (Рез>=41) и (Рез<=50) Тогда кол_4150=кол_4150+1; КонецЕсли; ЕСЛИ (Рез>=51) Тогда кол_51=кол_51+1; //КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; КонецЦикла; КонецЦикла; Итог=кол_20+кол_2130+кол_3140+кол_4150+кол_51; таб.ВывестиСекцию("Шапка"); таб.ВывестиСекцию("СекцияДо20"); таб.ВывестиСекцию("Секция_2130"); таб.ВывестиСекцию("Секция_3140"); таб.ВывестиСекцию("Секция_4150"); таб.ВывестиСекцию("Секция_51"); таб.ВывестиСекцию("Итог"); Таб.ПараметрыСтраницы(1,,,0,0,0,0,,,1,,); Таб.Опции(0,0,1,0); Таб.Защита(Константа.ФлагЗащитыТаблиц); таб.Показать("Таблица1"); таб.ТолькоПросмотр(1); КонецПроцедуры |
|||
27
Evpatiy
29.02.12
✎
11:33
|
(26) Запросом
|
|||
28
Рэйв
29.02.12
✎
11:33
|
Пока Сотр.ПолучитьЭлемент()>0 Цикл
Сообщить(Сотр.ДокументОкончания.ПричинаУвольнения); .... |
|||
29
Ork
29.02.12
✎
11:35
|
(28) Будет ошибка если сотрудник не увольнялся.
ЗЫ. Это я так ... к слову. (что б не сказать выпендриваюсь). |
|||
30
ЮлияКорж
29.02.12
✎
11:35
|
Фигушки пройденный этап не получается поле объекта не обнаружена
|
|||
31
Рэйв
29.02.12
✎
11:36
|
(29)(30) блин:-)
Ну неужели сложно Если ПустоеЗначение(Сотр.ДокументОкончания)=0 Тогда Сообщить(Сотр.ДокументОкончания.ПричинаУвольнения); КонецЕсли; |
|||
32
Рэйв
29.02.12
✎
11:37
|
А если сразу хочешь выбрать только тех кто уволен- то юзай запрос
|
|||
33
ЮлияКорж
29.02.12
✎
11:39
|
{D:\ОБРАБОТКИРАБОЧИЕ\111.ERT(32)}: Значение не представляет агрегатный объект (ПричинаУвольнения)
|
|||
34
Рэйв
29.02.12
✎
11:40
|
(33)Если у тебя может быть несколько видов документов в документе основании то проверяй еще на вид и бери только в тех где есть такой реквизит
|
|||
35
Рэйв
29.02.12
✎
11:41
|
*в документе окончании
|
|||
36
ЮлияКорж
29.02.12
✎
11:53
|
Рэйв ты прав все работает
|
|||
37
ЮлияКорж
29.02.12
✎
11:53
|
Спасибо!!!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |