Имя: Пароль:
1C
1С v8
Табличная часть
, , ,
0 kddvad1m
 
26.09.14
10:27
Подскажите как обратиться к табличной части документа, с таки условием, если табличная часть подраделение относиться к такому то родителю, то выполнять...
1 Wobland
 
26.09.14
10:34
а можно повторить вопрос?
2 User_Agronom
 
26.09.14
10:35
(1) Не поможет.
Только хардкор, только правильно сформулировать!!
3 HEKPOH
 
26.09.14
10:36
Даешь для ТЧ родителя!
4 Wobland
 
26.09.14
10:36
(2) подскажите, оно ли это?
запрос.выполнить().пустой()
ТЧ.НайтиСтроки()
5 zulu_mix
 
26.09.14
10:37
>>с таки условием
ну таки обгащайтесь :)
6 CashtanePC
 
26.09.14
10:37
Пятница здесь.
7 User_Agronom
 
26.09.14
10:40
(4) Нет, не оно. И вообще, у ТС спрашивай. Его ветка - пусть сам играет на балалайке и веселит народ.
8 hhhh
 
26.09.14
10:46
(1) всё-таки если повторить, миста не пропустит, скажет: такое сообщение уже было в теме.
9 kddvad1m
 
26.09.14
10:49
да всех с пятницей! еще раз на конкретном примере, документ прием на раб в орг, есть таб часть, там поле подразделение, нужно сделать условие если в поле подразделение выбрано подразделение и оно относиться к такому то родителю, то выполнять...

хочу реализовать префиксы по подразделениям, т.к. такого функционала нет в типовой зуп 2.5
10 Wobland
 
26.09.14
10:50
(9) а что, если есть и нет?
11 Wobland
 
26.09.14
10:50
а что такое префиксы по подразделениям?
12 kddvad1m
 
26.09.14
10:52
(11)
префикс по организации знаешь что такое? вот тоже самое но только по подразделениям организации, и на конкретно одном виде документа.
13 Wobland
 
26.09.14
10:53
(12) ну допустим. как ты будешь выбирать префикс из 20 возможных?
14 zulu_mix
 
26.09.14
10:54
(13) по выбранному в тч подразделению организации. видимо туда префикс присобачил
15 Fedor-1971
 
26.09.14
10:55
(9) т.е. работника можно принять в несколько подразделений?
И какой префикс будет у документа если приняли как слесаря в цех и как дворника в АХО
16 kddvad1m
 
26.09.14
10:56
(13)
почему из 20 возможных? я конкретный префикс задам конкретному подразделению. и этот префикс должен подставиться в номер документа если в поле подразделение указано подразделение относящиеся конкретному родителю.
17 djekting
 
26.09.14
10:56
18 Wobland
 
26.09.14
10:57
(16) потому что никто мне не запретит забабахать 20 рахных подразделений в ТЧ
19 2083
 
26.09.14
10:58
(16) а если у тебя в ТЧ несколько строк с разными подразделениями?
Ну допустим в документе одна строка. Док создали подразделение выбрали, док записали, ему присвоили префикс с кодом. Потом документ открыли, поменяли подразделение, записали. Что с кодом делать?
20 2083
 
26.09.14
10:59
(19) кодом - читай номером
21 kddvad1m
 
26.09.14
10:59
(18)
я хз как ты себе представляешь документ прием на работу, у нас его делают по одному человеку, это должно работать только на одном документе, прием на работу в орг.
22 2083
 
26.09.14
11:01
(21) а у нас пачками по 5-10 :)
23 kddvad1m
 
26.09.14
11:01
(19)
прием на работу в орг не меняют, еслу нужно перевести человека в другое подразделение, используют кадровое перемещение.
24 2083
 
26.09.14
11:03
(23) зачем перевести? просто по запарке в первый раз вместо цеха №1 выбрали цех №2 а потом чухнулись и побежали менять
25 kddvad1m
 
26.09.14
11:04
(24)
ну дак номер документу присваивается при проведении.
26 2083
 
26.09.14
11:05
(25) ты серьезно?
27 Wobland
 
26.09.14
11:06
(21) я себе представляю документ с ТЧ, мне больше не надо
28 User_Agronom
 
26.09.14
11:10
(9) Документом ты же одного сотрудника принимаешь? Я просто не помню (да и не знал никогда ЗуП 2.5)
Тогда подписка на событие ПриПолученииНовогоНомера и в ней пиши код формирования номера с КрутымПрефиксомДляДворницкой
29 kddvad1m
 
26.09.14
11:20
Должно быть наверное что то вроде этого
МетаданныеДокумента = ДокументОбъект.Метаданные();
        МетаданныеДокумента.ТабличныеЧасти.РаботникиОрганизации.Реквизиты.ПодразделениеОрганизации.Найти("Подразделение") <> Неопределено
        И ЗначениеЗаполнено(ДокументОбъект.Ответственный) Тогда

но в этом случае я ищу подразделение нижнего уровня, а нужно что бы было если это подразделение относится к родителю, тогла...
30 Wobland
 
26.09.14
11:23
(29) ты ищешь наличие реквизита. внезапно
31 2083
 
26.09.14
11:30
+(30) а что если документ создали анонимно?
32 Крошка Ру
 
26.09.14
11:45
(29) Это ты к реквизиту ТЧ так обратиться хочешь? Тогда чего-то вроде этого быть не должно.
33 Крошка Ру
 
26.09.14
11:46
Хотя... Пятница же...
34 Fedor-1971
 
26.09.14
11:47
(29) по ходу, ты не совсем понимаешь что делаешь в данном коде.
По факту ты проверил есть ли реквизит с таким наименованием (т.е. у тебя ещё и может не быть реквизита "подразделение" в справочнике как такового?) и заполнен ли ответственный. И что это тебе даст в плане решения твоей задачи?
Почитай в СП как искать по справочнику и работать с ТЧ документа и пока не надо трогать Метаданные.
35 Крошка Ру
 
26.09.14
11:47
Дарю:

ТабличнаяЧасть.Обратиться();
Если ТабличнаяЧасть.Подразделение.ОтноситЬся(ТакойТоРодитель) Тогда
Выполнять();
КонецЕсли;
36 kddvad1m
 
26.09.14
11:53
(35)
Спс большое! (34) понятно что если все прочитать, то все знать будешь, но форум и нужен для того что бы просто подсказали как нужно сделать, без наставлений изучать СП, это я итак знаю что его изучать надо) (30) (32) (34)  согласен фигню написал)
37 программистище
 
26.09.14
11:56
(36) форум нужен, чтобы разбираться в сложных вопросах, которые не описаны в учебниках
38 Крошка Ру
 
26.09.14
11:57
(36)Нзчт

>>но форум и нужен для того что бы просто подсказали как нужно сделать, без наставлений изучать СП

Кто ж тебя в такое заблуждение ввел?
39 User_Agronom
 
26.09.14
11:57
(29) Мсье не знает толк в извращениях.
Я бы всё понял, если бы этот код имел какой-то смысл. Всё-таки, раз вопрос префикса документа, рекомендую покурить (28)

Там проверка на то, что в табличной части одна строка, если да, тогда прочитать оттуда подразделение, и, в соответствии с подразделением добавить префикс.

Хранить префиксы можно в дополнительном реквизите справочника подразделений, но можно и в свежесозданном РС. А можно и в готовом регистре свойств объекта. Короче есть место для фантазий.
40 zakidonoff
 
26.09.14
12:04
На вскидку, как-то так...

ПроцеДура ОбработкаПроведения(блаблабла)

ТЧ = ТабличнаяЧасть.Выгрузить();
ТЧ.Свернуть("Подразделение");
Если ТЧ.Количество() = 1 И ЗначениеЗАполнено(ТЧ[0].Подразделение) Тогда
    НомерДок = (ЭтотОбъект.ЭтоНовый(), ПолучитьНовыйНомер(), Номер);
    Номер = СформироватьСуперПрефикс(ТЧ[0].Подразделение) + УдалитьСтарыйПрефикс(НомерДок);
КонецЕсли;

КонецПроцеДуры
41 zakidonoff
 
26.09.14
12:07
(40) Хотя, не - не в обработку проведения. Иначе будет на модифицированность материться.
Лучше уж ПередЗаписью()
42 User_Agronom
 
26.09.14
12:12
(41) И при каждой перезаписи документа сей код будет отрабатывать?
Есть же событие: при получении нового номера.

Никогда вы меня не слушаете, пойду лучше водку пить.
43 zakidonoff
 
26.09.14
12:15
(42) Эта процедура не отрабатывает при перезаписи документа.
А его состав может измениться.
см (24)
44 User_Agronom
 
26.09.14
12:24
(43) Номер можно и руками самому поменять потом. Если уж на  то пошло.
45 zakidonoff
 
26.09.14
12:27
(44) Это из области, "я не прав, но вот мои крайние 5 копеек"?
=)
46 Крошка Ру
 
26.09.14
12:28
(44) Если уж на то пошло, префикс тоже можно с самого начала руками устанавливать.
47 User_Agronom
 
26.09.14
12:43
(45) Я прав. Но раз не хотите слушать, то мне всё равно))
(46) Один раз исправить ошибку или на каждом документе номер руками формировать? Разница есть или нет?
48 Badjo
 
26.09.14
12:47
(9) Займись делом переводи ЗУП с 2.5 на 3.0
49 zakidonoff
 
26.09.14
12:50
(47) Я не хочу слушать тех, кто идёт пить водку без меня :-Р
50 User_Agronom
 
26.09.14
13:15
(49) Не вопрос. Тащи закусь и присоединяйся))