Имя: Пароль:
1C
1С v8
Максимальный массив структур для передачи с клиента на сервер?
0 korolar
 
05.07.19
18:20
Товарищи эксперты, существует ли ограничение по размеру массива структур для передачи на клиент с сервера? Падает приложение, 8.3.12. Сам массив небольшой, но в структурах порядка 100 элементов и в некоторых может быть аналогичный массив...
Причем платформа пытается повторно вызвать с клиента ту же серверную функцию несколько раз (!) как будто в рекурсии, ответ от которой не может получить, прежде чем упасть.
Что-то ни на партнерском, ни в итс, ни в яндексе не ищется...
1 H A D G E H O G s
 
05.07.19
18:22
Первое что приходит на ум - циклическая ссылка
2 Вафель
 
05.07.19
18:23
а что с клиент на сервер нельзя передать циклическую ссылку.
сами по себе такие ссылки вроде не под запретом
3 palsergeich
 
05.07.19
18:28
100 элементов ниочем, я миллионы передавал.
4 Immortal
 
05.07.19
18:34
(2) и как ты собираешься передать массив 1 с элементом массивом 2 с элементом массивом 3 с элементом массивом 1?
5 dubolom
 
05.07.19
18:35
(2) При передаче с клиента на сервер 1с-ка вполне может не понять, что ссылка идёт на уже переданный элемент. Тогда она воспримет это как бесконечную вложенность.
6 palsergeich
 
05.07.19
18:41
(5) рекурсивный алгоритм десериализации уйдет в рекурсию, возможно да и в этом дело
7 Вафель
 
05.07.19
18:43
кстати да, все виснет

&НаКлиенте
Процедура Команда1(Команда)
    а = Команда1НаСервере();
КонецПроцедуры

&НаСервере
Функция Команда1НаСервере()
    
    а = Новый Структура;
    А.Вставить("а", а);
    
    Возврат а;
    
КонецФункции
8 dubolom
 
05.07.19
18:43
(7) Ну ты прямолинейный:)
9 korolar
 
08.07.19
17:22
(9) Да, так оно и было :)

Благодарю за ответы! Нашли и устранили циклическую ссылку в рекурсии.
10 Сияющий в темноте
 
08.07.19
19:24
Сколько нехороших слов можно сказать в адрес 1с,когда php,родившийся еще до 1с прекрасно умел понимать циклические ссылки.
11 palsergeich
 
08.07.19
21:42
(10) Вы просто пишите код проще (с)
12 H A D G E H O G s
 
08.07.19
21:50
(11) Ты бы написал что-нибудь в ту ветку, а то я в отпуске, в деревне на Украине, растерялся, и примеров у меня под рукой нет.
13 palsergeich
 
08.07.19
22:09
(12) Я там обписался уже.
Если ты партнерскую. См Соколов.
Так получилось что зашел не под своей учеткой, но и ладно)
14 palsergeich
 
08.07.19
22:11
(12) А примеры - мне кое что развальцуют, у меня все под НДА.
15 palsergeich
 
08.07.19
22:14
(14) По тому случаю - запрещено даже называть что это за место где либо, не говоря уже о том что бы хоть что то выложить(
Так только в общих чертах могу и апаю тему.