Прошу помощи. OLE - ЗначениеИзСтрокиВнутр - Проблема с заменой кавычек. #155666


#0 by DeiMos
Туплю уже 2 часа...Уже всю голову сломал...   (спрСотрЗ - это спозиционированный на конкретном элементе справочник "Сотрудники" базы ОЛЕ /Типовая ЗиК/) Далее: Приказ = Пишет "Неизвестная ошибка".Чувствую, что проблема в кавычках, которые содержатся в строкевнутр...
#1 by DeiMos
Если делать напрямую (без замены кавычек), то мой код читается проще:В результате ошибка такая:  1С:Предприятие: 1 глПриказПоСотруднику(ЗначениеИзСтрокиВнутр({"X","0","0","0","0","0",""}<<?>>),ИспользоватьДату,"ПриказОПриемеНаРаботу",-1).ДатаПриемаНедостаточно фактических параметров  Всю голову уже сломал...
#2 by DeiMos
В сабже почему-то съелась часть сообщения... Там было вот это:Приказ
#3 by DeiMos
Ладно, бог с ним, с сабжем... Что-то движок форума глючит...Пробовал ещё так:(перед строкой "Приказ = "):
#4 by DeiMos
(3+): А на это выдаётся: Ничего не понимаю...
#5 by zzz
а так нельзя?БазаОле.ЗначениеИзСтрокиВнутр(ТекСотр);и вообще, чему равно "ТекСотр" ?
#7 by DeiMos
: Вот так:Тоже выдаёт "Неизвестная ошибка".и вообще, чему равно "ТекСотр"?={"X","0","0","0","0","0",""}
#8 by DeiMos
: Я точно так и делаю.Похоже, мешают двойные кавычки в строке {"X","0","0","0","0","0",""}...
#9 by Lexusss
Попробуй ЗначениеИзСтрокиВнутр("""+СтрЗаменить(ТекСотр,"""","""""")+"""), но имхо не взлетит - синхронизируй по полным кодам.У тебя же спрСотрЗ - пустой, в пустой внутреннее представление сваливается.
#10 by zzz
""+БазаОЛЕ.ЗначениеИзСтрокиВнутр(ТекСотр) = ??? Строка!"глПриказПоСотруднику("+БазаОЛЕ.ЗначениеИзСтрокиВнутр(ТекСотр)+" = ????
#11 by zzz
http://www.sinor.ru/~my1c/knowhow/v7&OLE.htmlРабота с запросами и EvalExpr Как вариант - попытаться "глПриказПоСотруднику" переписать в свою обработку.
#12 by Муму после всплытия
БазаОЛЕ.глПриказПоСотруднику(БазаОЛЕ.глРасшифровка).....................ну или через EvalExpr...................................................
#13 by DeiMos
Сообщает: глПриказПоСотруднику(ЗначениеИзСтрокиВнутр("{""X"",""0"",""0"",""0"",""0"",""0"",""""}"),ИспользоватьДату<<?>>,"ПриказОПриемеНаРаботу",-1).ДатаПриемаНеопознанный оператор
#14 by zzz
а вообще можно попробовать ..ID_Сотр_ОЛЕ = СтрЗаменить(ТекСотр,"""","""""");БазаОле.EvalExpr(
#15 by zzz
ИспользоватьДату = ??
#16 by Lexusss
Х и много нулей - это внутреннее представление не 1С объекта. Если это уже синхронизированный ОЛЕ объект, то искомый ответ
#17 by DeiMos
: Вот я стуууупил конкретнооооооо!!!!МЛИН, это же метод элемента справочника!!! Всё, вопрос решён!Спасибо тебе, Дмитрий! (Дело было вовсе и не в кавычках... ;-) )
#18 by zzz
2 Сёдня день тяжёлый. 31 января..кстати пробовал? Может действительно можно "внаглую" БазаОле.глПриказПоСотруднику(..) ?
#19 by DeiMos
: Думаю, не прокатит, т.к. глПриказПоСотруднику - это функция глобального модуля ЗиК.А к функциям, насколько я помню, обращаться нельзя по ОЛЕ. Только через Eval...
#20 by Мутабор
Не помню, если экспорт есть может и так можно.
#21 by Lexusss
Можно и напрямую... Так что перемудрил ты маленько.
#22 by DeiMos
: Экспорт - есть.Но всё равно нельзя. Не работает, проверял так: Релиз 25sql.
#23 by Мутабор
Создай функцию, экспортируй и верни строку. Вернется?лень проверять, я уже больше на 8-ке, чем на 7-ке.
#24 by DeiMos
: Нельзя напрямую, сам попробуй...
#25 by DeiMos
: К сожалению, в ЗиК эта функция возвращает не строку, а документ "ПриказОПриемеНаРаботу"...Так что - ты прав, если бы была строка - функция бы работала нормально...Но увы...
#26 by Мутабор
Слушай, если строка возвращается, а документ нет, то ты где-то неправ.для начала должно по идее быть.
#27 by zzz
18+ На воффке сообщили:----Оказывается, что сегодня, 31 января, день рождения водки.Именно в этот день, в 1865 году Дмитрий Менделеев защитил докторскую диссертацию на тему "О соединении спирта с водою" и получил звание профессора Петербургского университета на кафедре технической химии. В дальнейшем расчеты Менделеева легли в основу рецепта классической русской водки.
#28 by Lexusss
А чего говорит? Семерку лениво ставить.
#29 by Мутабор
По оле только одно говорит всегда.
#30 by DeiMos
Ребята, сорри, страшно много работы... Вот так работает нормально:
#31 by zzz
2 да убери ты лишние кавычки то..  кстати дату лучше проверять на пустую, она по ОЛЕ вроде с каким-то "кривым" значением приходит.
#32 by Lexusss
Необщительная у тебя Оля попалась. :-)У меня разный бред гонит (да и у 0 тоже), а бывает и вовсе подвисает... :-0
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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