|
v7: Как назначить вид? | ☑ | ||
---|---|---|---|---|
0
DrRaptor
10.09.13
✎
18:19
|
Есть документ. В нем реквизит типа <Документ>. Нужно при создании документа присвоить реквизиту вид в зависимости от ситуации.
Вот часть текста: Если Найти(ТипИсполнения.Идентификатор(),"ДС")>0 Тогда НазначитьВид(ДокументЗайма,"ОперацияДС"); ИначеЕсли Найти(ТипИсполнения.Идентификатор(),"ЦБ")>0 Тогда НазначитьВид(ДокументЗайма,"ОперацияЦБ"); КонецЕсли; Проверяю про Отладчику: Команда НазначитьВид отрабатывается, а вид не присваивается. В чем дело? Вот что выдается в отладчике: ДокументЗайма.Вид() = "" Найти(ТипИсполнения.Идентификатор(),"ДС") = 24 |
|||
1
DrRaptor
11.09.13
✎
11:29
|
Кто-нибудь, подскажите, пожалуйста, в чем может быть дело.
|
|||
2
Bigbro
11.09.13
✎
11:41
|
ну в указанной части кода проблем не видно, что еще сказать )
|
|||
3
DrRaptor
11.09.13
✎
12:06
|
Может есть какие-то ограничения на использование команды?
|
|||
4
Хряк
11.09.13
✎
12:47
|
какой тип у реквизита ДокументЗайма
|
|||
5
DrRaptor
11.09.13
✎
12:53
|
реквизит типа <Документ>
|
|||
6
DrRaptor
11.09.13
✎
12:57
|
Я уже создал новый пустой вид документа. В нем реквизит "Новый1" с типом <Документ>. В форме одна процедура при открытии с командой
НазначитьВид(новый1,"ОперацияЦБ"); Все равно вид не назначается! Может в глобальном модуле нужно какое-то разрешение установить, галочку где-то поставить... Может нельзя вообще реквизиту документа вид назначать... |
|||
7
Voronve
11.09.13
✎
12:57
|
НазначитьТип(<?>,,,)
Синтаксис: НазначитьТип(<ИмяРеквизита>,<ИмяТипа>,<Длина>,<Точность>) Назначение: Назначить тип для реквизита неопределенного типа. Параметры: <ИмяРеквизита> - строка с наименованием реквизита неопределенного типа, как он назван в конфигураторе. <ИмяТипа> - строковое выражение - название типа данных (или Вид субконто), который назначается реквизиту. Например, ''Строка'', ''Число'', ''Справочник.Товары'', ''Документ.РасходнаяНакладная'' и т.п. <Длина> - необязательный параметр. Число - длина поля представления данных. Имеет смысл только при задании числового или строкового типа. <Точность> - необязательный параметр. Число знаков после десятичной точки. Имеет смысл только при задании числового типа. |
|||
8
DrRaptor
11.09.13
✎
13:02
|
ну НазначитьТип то понятно что работает, тут все нормально.
Вопрос то про НазначитьВид |
|||
9
Aleksey
11.09.13
✎
13:03
|
(8) а попробуй добавить
Если Найти(ТипИсполнения.Идентификатор(),"ДС")>0 Тогда НазначитьВид(ДокументЗайма,"ОперацияДС"); ДокументЗайма=ПолучитьПустоеЗначение("Документ.ОперацияДС"); ИначеЕсли Найти(ТипИсполнения.Идентификатор(),"ЦБ")>0 Тогда НазначитьВид(ДокументЗайма,"ОперацияЦБ"); ДокументЗайма=ПолучитьПустоеЗначение("Документ.ОперацияЦБ"); КонецЕсли; |
|||
10
Хряк
11.09.13
✎
13:04
|
неизменятьвид не забудь
|
|||
11
Aleksey
11.09.13
✎
13:06
|
Форма.ДокументЗайма.НеИзменятьВид(1);
|
|||
12
DrRaptor
11.09.13
✎
13:12
|
Спасибо.
Вот так работает: Форма.ДокументЗайма.НеИзменятьВид(1); Если Найти(ТипИсполнения.Идентификатор(),"ДС")>0 Тогда НазначитьВид(ДокументЗайма,"ОперацияДС"); ИначеЕсли Найти(ТипИсполнения.Идентификатор(),"ЦБ")>0 Тогда НазначитьВид(ДокументЗайма,"ОперацияЦБ"); КонецЕсли; |
|||
13
DrRaptor
11.09.13
✎
13:13
|
А я считал, что НеИзменятьВид(0) - типа так дается разрешение на присвоение нового вида. Думал, что (1) вообще запрещает менять вид. Пробовал вообще без НеИзменятьВид - не помогало.
|
|||
14
DrRaptor
11.09.13
✎
14:13
|
Все работает, но проверка вида в отладчике все равно ничего не показывает:
ДокументЗайма.Вид() = "" че за хрень? |
|||
15
Voronve
11.09.13
✎
14:17
|
(14) Все логично. .Вид() - возвращает тебе "РасходнаяНакладная" из "Документ.РасходнаяНакладная". Если документ пустой (не выбран) .Вид() вернет тебе пустую строку
|
|||
16
DrRaptor
11.09.13
✎
14:20
|
а как тогда узнать какой вид назначен реквизиту?
|
|||
17
DrRaptor
11.09.13
✎
16:08
|
как узнать какой вид назначен реквизиту?
|
|||
18
viktor_vv
11.09.13
✎
16:13
|
А если вид назначать так
ДокументЗайма = ПолучитьпустоеЗначение("Докмент.ОперацияДС"); что даст ДокументЗайма.Вид() ? |
|||
19
Chum
11.09.13
✎
16:14
|
Еще есть ВидыДляВыбора
|
|||
20
viktor_vv
11.09.13
✎
16:16
|
(18)+ Не, не поможет.
|
|||
21
DrRaptor
11.09.13
✎
16:17
|
ПолучитьпустоеЗначение("Докмент.ОперацияДС") вообще ничего не дает
|
|||
22
DrRaptor
11.09.13
✎
16:20
|
Когда вид реквизита задан жестко в конфигураторе, все условия, сравнения и прочее работают нормально даже при невыбранном значении реквизита ДокументЗайма.
Как только делаю неопределенный документ - все слетает, ничего не работает! Присвоение вида реквизиту в самом начале работы формы не помагает. |
|||
23
DrRaptor
12.09.13
✎
10:54
|
Никто ответа не знает?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |