Имя: Пароль:
1C
 
Почему не работает метод Base64Значение() ?
0 TDI
 
13.08.15
12:24
Передавая в этот метод строку, вызвращается Неопределено.

А если пользоваться веб-сайтом, например Base64.ru, через этот сайт всё корректно расшифровывается.

В чём причина может быть?
1 igork1966
 
13.08.15
12:27
А точно неопределено а не двоичные данные?
2 igork1966
 
13.08.15
12:28
(1) + в описании функции в СП нет варианта с возвращением неопределено
3 Гёдза
 
13.08.15
12:28
давай показывай
4 TDI
 
13.08.15
12:43
(1) возвращает "Неопределено"

http://s49.radikal.ru/i125/1508/35/219bd05caf03.jpg
5 Живой Ископаемый
 
13.08.15
12:45
Это тип а не значение
6 Живой Ископаемый
 
13.08.15
12:45
Нужно убрать режим совместимости
7 TDI
 
13.08.15
12:59
(5) а у типа "Неопределено" значения какие могут быть ? :)
8 Живой Ископаемый
 
13.08.15
13:00
2(7) как ты видишь у себя на скриншоте - никакого
9 Живой Ископаемый
 
13.08.15
13:01
попробуй сравнить то что тебе возвращается с Неопределено
10 TDI
 
13.08.15
13:02
тоже самое и возвращается.

Кто-нибудь сталкивался с такой проблемой ?
11 Живой Ископаемый
 
13.08.15
13:04
убрал режим совместимости?
12 TDI
 
13.08.15
13:32
база не используется режим совместимости.

Вот пример строки:

PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48ZWxlbWVudHMg0JLQtdGA0YHQuNGP0KHRhdC10LzRiz0iMS4wIiDQlNCw0YLQsNCk0L7RgNC80LjRgNC+0LLQsNC90LjRjz0iMjAxNS0wOC0xM01TSzEzOjE3OjU5Ij48emFrYXo+CjxCaXREYXRlPjwvQml0RGF0ZT4KPC96YWthej48L2VsZW1lbnRzPg==
13 Cube
 
13.08.15
13:37
(12) Ващета 1С ожидает, что у тебя в Base64 закодированы ДвоичныеДанные, а не то, что ты захотел... СП читать надо, хоть иногда.
14 TDI
 
13.08.15
13:43
(13) а в двоичные данные можно закодировать не всё что захочешь ? :))
15 igork1966
 
13.08.15
13:44
(13) Не в кассу
(12) У меня возвращает двоичные данные:
3C 3F 78 6D 6C 20 76 65 72 73 69 6F...    ДвоичныеДанные
16 TDI
 
13.08.15
13:48
(15) пишешь Base64Значение("PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48ZWxlbWVudHMg0JLQtdGA0YHQuNGP0KHRhdC10LzRiz0iMS4wIiDQlNCw0YLQsNCk0L7RgNC80LjRgNC+0LLQsNC90LjRjz0iMjAxNS0wOC0xM01TSzEzOjE3OjU5Ij48emFrYXo+CjxCaXREYXRlPjwvQml0RGF0ZT4KPC96YWthej48L2VsZW1lb")

и возвращаются двоичные данные ?
Какая версия платформы ?
17 igork1966
 
13.08.15
13:48
(15) +
1С:Предприятие 8.3 (8.3.6.2100)
Режим совместимости: Версия 8.2
18 igork1966
 
13.08.15
13:49
(15) +

Base64Значение("PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48ZWxlbWVudHMg0JLQtdGA0YHQuNGP0KHRhdC10LzRiz0iMS4wIiDQlNCw0YLQsNCk0L7RgNC80LjRgNC+0LLQsNC90LjRjz0iMjAxNS0wOC0xM01TSzEzOjE3OjU5Ij48emFrYXo+CjxCaXREYXRlPjwvQml0RGF0ZT4KPC96YWthej48L2VsZW1lbnRzPg==")
19 igork1966
 
13.08.15
13:52
(17) сорри, уточню
Режим совместимости интерфейса: Версия 8.2
Режим совместимости: Не использовать
20 TDI
 
13.08.15
13:56
(19)
а да, эта у меня тоже нормально прочиталась.
А вот эту попробуй

PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48ZWxlbWVudHMg0JLQtdGA0YHQuNGP0KHRhdC10LzRiz0iMS4wIiDQlNCw0YLQsNCk0L7RgNC80LjRgNC+0LLQsNC90LjRjz0iMjAxNS0wOC0xM01TSzEzOjE3OjU5Ij48emFrYXo+PEJpZE51bWJlcj7QmNCfMDAwMDAwMjI8L0JpZE51bWJlcj48QmlkRGF0ZT4xMC4wOC4yMDE1PC9CaWREYXRlPjxDb2RlQnV5ZXI+Njc3OTk8L0NvZGVCdXllcj48Q29kZVBvaW50PjAwMDAwMDAwMzQ5PC9Db2RlUG9pbnQ+PFBhc3BvcnRDb2RlPjE10J\/QkDAwMDAzMTk3PC9QYXNwb3J0Q29kZT48T3JkZXJMaW5lcz48TGluZT48Q29kZVNLVT4xMjIxNjwvQ29kZVNLVT48UXVhbnRpdHk+NTA8L1F1YW50aXR5PjxHcm9zc1ByaWNlPjYwNS4wNDwvR3Jvc3NQcmljZT48R3Jvc3NBbW91bnQ+MzAyNTI8L0dyb3NzQW1vdW50PjwvTGluZT48L09yZGVyTGluZXM+PC96YWthej48L2VsZW1lbnRzPg==
21 igork1966
 
13.08.15
13:57
(20) неопределено
22 igork1966
 
13.08.15
14:04
Вот подсунул строку в (20)
http://foxtools.ru/Base64

Входные данные не являются действительной строкой Base-64, поскольку содержат символ в кодировке, отличной от Base 64, больше двух символов заполнения или недопустимый символ среди символов заполнения.


При этом в https://www.base64decode.org/
Декодировало:
<?xml version="1.0" encoding="utf-8"?><elements ВерсияСхемы="1.0" ДатаФормирования="2015-08-.......
23 igork1966
 
13.08.15
14:08
(20) ГЫ гы!

Проблема в "\/"
Замена на /  и усе декодируется

Ты взял откуда-то строку с символом экранировки \
24 igork1966
 
13.08.15
14:10
(23) из C, C++, C# кода  ;-)
25 TDI
 
13.08.15
15:03
это ответ из веб-сервиса.

Да, уже разобрались, что-то не так выгружалось в интернет сервиса..
26 igork1966
 
13.08.15
15:11
(25) Ты не понял, строка из (20) если заменить "\/" на "/"
нормально декодируется Base64Значение()
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан