Проверка на мутабельное значение. #527773


#0 by AaNnDdRrEeYy
Добрый день. Встроенная функция ЗначениеЗаполнено выдает исключение если я пытаюсь проверить мутабельное значение, каким образом можно проверить мутабельное значение попадает в параметр функции или нет?
#1 by Maxus43
А передаёш разные значения? зачем?
#2 by AaNnDdRrEeYy
Потомучто код сложный функция обрабатывает разные объекты.
#3 by famnam
из си "Функция не работает с мутабельными значениями. При передаче мутабельного значения функция вызывает исключение."
#4 by Axel2009
а если попробовать использовать функцию как для сервера так и для клиента?
#5 by Ursus maritimus
Легко
#6 by Maxus43
Ну тип проверь... исключи мутабельные
#7 by AaNnDdRrEeYy
я про это и написал. функция нужна только на сервере. спасибо так и сделаю
#8 by AaNnDdRrEeYy
а кто  нибуть знает полный список мутабельных типов?
#9 by Ursus maritimus
Не слушай лужу газирует.
#10 by mikecool
все объекты
#11 by Maxus43
Мутабельное - при изменении свойства - изменение объекта. Логически вычислить можно) хз, где-то лежит наверно. А вобще - ты же знаеш типы обрабатываемые функцией твоей... или прям любые могут быть? исключи типы Объект, набор записей и т.д. явно мутабельные. Но в тоже красиво, главно остановку по ошибке в отладке не включать)
#12 by Maxus43
да ладно уж, можно предусмотреть то
#13 by Fragster
у меня функция ЗначениеНеЗаполнено есть, которая вызывает в попытке ЗначениеНеЗаполнено, в случае исключения возвращает ложь
#14 by MaxS
где-то давно встречал что если в модуле проведения документа пользоваться попыткой-исключением, документ может не провестись и выдаст сообщение, что в данной транзакции уже происходили ошибки.
#15 by AaNnDdRrEeYy
ЗначениеНеЗаполнено - это самописная, а у меня встроенная в 8.2 этот код что то вроде обмена данными Если НастройкаСоотношения.СпособЗаполненияРеквизитаПриемника = Перечисления.СпособЗаполненияРеквизитаПриемника.РеквизитИсточника Тогда
#16 by Maxus43
в 8.2 же свои заморочки с Типами, некоторые типы не везде доступны, ТЗ например
#17 by AaNnDdRrEeYy
такое может быть если явно объявлять транцакию НачатьТранзакцию; В таком случае точно будет такая ощибка
#18 by AaNnDdRrEeYy
это на форме почти ничего не доступно а на сервере все доступно. ну кроме форм и что с ними связано.
#19 by Ursus maritimus
Продолжаем дуть в лужу.
#20 by Defender aka LINN
КД юзай :) Вообще говоря, надо просто сделать так, чтобы в ЗначениеРеквизитаОбъектаОснования ничего такого попасть не могло.
#21 by AaNnDdRrEeYy
что такое КД?
#22 by Axel2009
ну так значит и надо все объекты получать на сервере. и тогда мутабельных значений не будет..
#23 by Defender aka LINN
Конвертация данных
#24 by Ursus maritimus
Ну что за бред? Составной тип справочник.номенклатура и справочник.контрагент Мутабелен? - Да Доступен на сервере? - Да
#25 by AaNnDdRrEeYy
это 8.2 на клиенте вообще объект получить нельзя.
#26 by Defender aka LINN
Это скуяли он мутабелен?
#27 by acsent
Значение не может быть "составного типа". А само описание типа не мутабельно
#28 by Axel2009
если в функции на клиенте получить ОБЪЕКТ. и эту переменную передать в функцию которая выполняется на сервере - то будет ошибка мутабельности
#29 by AaNnDdRrEeYy
Синтаксис: ЗначениеЗаполнено(<Значение>) Описание: Функция проверяет, отличается ли переданное значение от значения по умолчанию того же типа. Не работает с мутабельными значениями. При передаче мутабельного значения функция вызывает исключение. в сиснтаксисе про составной ничего нет, может быть составным.
#30 by AndOne
#31 by Axel2009
это как пользоваться метками. вроде можно, но лучше не надо. иначе другие будут разгребать и искать ошибки очень долго..
#32 by Maxus43
Он про значение само, оно не составного типа будет в любом случае
#33 by Defender aka LINN
ЗНАЧЕНИЕ не может быть составного типа.
#34 by tenikov
в 8.2 на клиенте объект - основной реквизит формы.
#35 by acsent
Это не Объект, а СтруктураДанныхФормы
#36 by tenikov
ну вот я конфигуратор открыл сейчас: Объект - основной реквизит формы, тип "ДокументОбъект.Продажа".
#37 by Defender aka LINN
Теперь открой отладчик и в нем посмотри
#38 by tenikov
а, ну да.
#39 by AaNnDdRrEeYy
МОЖЕТ. сейчас проверил работает.
#40 by Defender aka LINN
Фотографию двуликого януса в студию.
#41 by Maxus43
Это как? О_о) скриншот в студию
#42 by Defender aka LINN
Требую скриншот! :)
#43 by AaNnDdRrEeYy
Это код в форме обработки, реквизит1 составного типа Дата. число и строка. как выложить обработку?
#44 by Maxus43
тип составной, значение то не составное же? скриншот отладчика с показаным значением реквизита требо
#45 by Defender aka LINN
Кто у тебя про реквизит спрашивал? Значение реквизита составное покажи. Которое одновременно и датой, и строкой будет.
#46 by Maxus43
Щас момент времени покажет)
#47 by AaNnDdRrEeYy
в своем вообще уме? такого быть не может.
#48 by AaNnDdRrEeYy
Ну кто мне покажет когда Реквизит или просто переменная и стока и дата одновременно?
#49 by Maxus43
это мы от тебя хотели узнать
#50 by AaNnDdRrEeYy
нифигасе в не я же писал.
#51 by Maxus43
ты писал)
#52 by Defender aka LINN
В написал. Еще и большими буквами :)
#53 by acsent
ЗначениеЗаполнено проверяет не реквизит, а ЗНАЧЕНИЕ реквизита. Короче двойка тебе, иди учи матчасть
#54 by AaNnDdRrEeYy
в ответ на в котором дословно ЗНАЧЕНИЕ не может быть составного типа. внимание на "составного ТИПА". в реквизит составного ТИПА.
#55 by AaNnDdRrEeYy
пойду мат учить, как научусь популярно всем объясню.
#56 by Defender aka LINN
Внимание на "ЗНАЧЕНИЕ". Я его, по-твоему, совершенно случайно большими буквами набрал? :)
#57 by Maxus43
МоментВремени же составное значение кстати) тип один только
#58 by Defender aka LINN
С фига ли? МоментВремени - это вполне себе отдельный тип.
#59 by AaNnDdRrEeYy
составного значения не бывает.
#60 by Defender aka LINN
Именно это я в и написал, ващета :)
#61 by AaNnDdRrEeYy
в 1С появился новый термин "Составное Значение"... мда
#62 by Maxus43
Тип то отдельный, но значение выглядит составным, дата + ссылка, разных типов то конечно не может быть значение
#63 by AaNnDdRrEeYy
ну если так рассуждать то надо над Соотвествием тип то один а значение всегда двойное.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С