Имя: Пароль:
1C
1С v8
Описание JSON
0 Масянька
 
12.12.19
12:43
День добрый!
Пожалуйста, поделитесь хорошим описание формата JSON.
Спасибо.
1 Kigo_Kigo
 
12.12.19
12:52
Это тупой текст
2 Asmody
 
12.12.19
12:54
3 Garykom
 
гуру
12.12.19
14:55
4 ДенисЧ
 
12.12.19
14:57
(0) Куча фигурных скобок, кавычек и запятых.
5 unenu
 
12.12.19
15:22
{}
6 Масянька
 
12.12.19
15:39
(2) Это не совсем то.
(3) Вот это и надо блондинке.
СПАСИБО!
7 Масянька
 
12.12.19
15:43
Я тут спрошу: на форме (обработка внешняя) есть много галочек (реквизиты).
Мне хочется посчитать сумму отмеченных галочек.
&НаСервере
Функция ПроверочнаяСумма()
    
    Для Каждого Рек из Элементы Цикл
        Сообщить(рек.Имя+" - "+Строка(рек.Вид) + " - " + Объект[Рек]);
    КонецЦикла;
    
КонецФункции
Ругается - Получение элемента по индексу для значения не определено (после добавления Объект).
Как сделать?
8 Масянька
 
12.12.19
15:44
+(7) Галочки - реквизиты обработки.
9 ДенисЧ
 
12.12.19
15:45
Рек.Имя
10 Масянька
 
12.12.19
15:47
(9) Это имя. А надо - значение.
11 ДенисЧ
 
12.12.19
15:47
Объект[Рек.Имя]

ЗЫ. Борщ готов? Пиво в холодильнике стынет? ))
12 Масянька
 
12.12.19
15:49
(11) Хрен тебе, а не пиво с борщом.
Поле объекта не обнаружено.
13 sitex
 
naïve
12.12.19
15:52
(11) Пиво отменяется. )
14 sitex
 
naïve
12.12.19
15:53
(11) У нее внешняя обработка.
15 hhhh
 
12.12.19
15:56
(12) значит этот Элемент не связан с реквизитом обработки
16 Trotter
 
12.12.19
15:58
Форма и &НаСервере - так и должно быть ?
17 Масянька
 
12.12.19
16:00
(15) Коню понятно.
18 Масянька
 
12.12.19
16:00
Как выкручиваться?
19 sitex
 
naïve
12.12.19
16:10
(18) не таблица ? Просто на форме ?
20 sitex
 
naïve
12.12.19
16:12
Этаформа["твой реквизит"] попробуй так на память пишу.
21 Масянька
 
12.12.19
16:12
(19) Не. Просто галочки на форме.
22 Масянька
 
12.12.19
16:13
(20) Проблема в том, что на форме есть реквизиты обработки, а есть реквизиты формы.
Может есть вариант перебирать реквизиты обработки (объекта)?
23 Garykom
 
гуру
12.12.19
16:19
(22) см (9) и может все же борщ?
24 Масянька
 
12.12.19
16:26
(23) А может хрен тебе? См. (12)
25 ДенисЧ
 
12.12.19
16:28
Реквизиты формы (не объекта) на сервере не получишь. Переноси своих галочек в объект и там шастай по нему.
И да, бегом за пивом...
26 Franchiser
 
гуру
12.12.19
16:30
(24) Объект -> Объект1
27 pechkin
 
12.12.19
16:30
не у каждого элемента имя совпадает с реквизитом
28 Масянька
 
12.12.19
16:30
Ни на пиво, ни на борщ, вы, мальчики, не заработали.
29 pechkin
 
12.12.19
16:30
но причем здесь джсон то был?
30 Масянька
 
12.12.19
16:31
(29) С него всё началось :))))))))))))
31 Масянька
 
12.12.19
16:34
Дарю:
&НаСервере
Функция ПроверочнаяСумма()
    
    ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
    Для Каждого Реквизит Из ОбработкаОбъект.Метаданные().Реквизиты Цикл
    Сообщить(Реквизит.Имя+" - "+Реквизит.Тип + " - " + Реквизит + " - " + ОбработкаОбъект[Реквизит.Имя]);
    КонецЦикла;
    
КонецФункции
Вместо пива и борща :)
32 ДенисЧ
 
12.12.19
16:34
(31) А это обман. Это получение рекизитов обработки, а не формы. Так что пивом не отделаешься. Литр водки минимум..
33 Масянька
 
12.12.19
16:35
(32) Ты сначала читать внимательно научись. В (8) специально уточнила.
34 unenu
 
12.12.19
16:54
ОбъектЗнч = РеквизитФормыВЗначение("Объект");
Для Каждого Рек из Элементы Цикл
        Сообщить(рек.Имя+" - "+Строка(рек.Вид) + " - " + ОбъектЗнч[Рек.Имя]);
КонецЦикла;
35 unenu
 
12.12.19
16:56
а уже съели, ну ладно
36 Масянька
 
13.12.19
08:48
А как работает "ИЛИ" в 1с? Проверяет всю цепочку условий или достаточно первого несоответствия?
37 DrWatson
 
13.12.19
08:59
(36) Открой синтаксис-помощник.
38 Масянька
 
13.12.19
09:02
(37) Если (If)
Синтаксис:
Если <Логическое выражение> Тогда
// Операторы
[ИначеЕсли <Логическое выражение> Тогда]
// Операторы
[Иначе]
// Операторы
КонецЕсли;
Параметры:
<Логическое выражение>
Логическое выражение.
Тогда
Операторы, следующие за Тогда выполняются, если результатом логического выражения является значение Истина.
// Операторы
Исполняемый оператор или последовательность таких операторов.
ИначеЕсли
Логическое выражение, следующее за ключевым словом ИначеЕсли, вычисляется только тогда, когда условия в Если и всех предшествующих ИначеЕсли оказались равны Ложь.
Операторы, следующие за конструкцией ИначеЕсли — Тогда, выполняются, если результат логического выражения в данном ИначеЕсли равен Истина.
Иначе
Операторы, следующие за ключевым словом Иначе, выполняются, если результаты логических выражений в конструкции Если и всех предшествующих конструкциях ИначеЕсли оказались равны Ложь.
КонецЕсли
Ключевое слово, которое завершает структуру оператора условного выполнения.
Описание:
Оператор Если управляет выполнением программы, основываясь на результате одного или более логических выражений. Оператор может содержать любое количество групп операторов, возглавляемых конструкциями ИначеЕсли — Тогда.
     Методическая информация

ОПЕРАТОРЫ, СЛЕДУЮЩИЕ ЗА ТОГДА ВЫПОЛНЯЮТСЯ, ЕСЛИ РЕЗУЛЬТАТОМ ЛОГИЧЕСКОГО ВЫРАЖЕНИЯ ЯВЛЯЕТСЯ ЗНАЧЕНИЕ ИСТИНА. (это я выделила).
Где ответ?
39 ДенисЧ
 
13.12.19
09:05
Неужели Масянька стала читать документацию?? О_о
(36) Условия вычисляются слева направо, пока результат не станет выяснен. В 77 было по-другому.
40 Масянька
 
13.12.19
09:08
(39) А с чего ты взял, что я её не читала?
Спасибо.
41 Asmody
 
13.12.19
09:33
Аню подменили? Или в Крыму медведь сдох?
42 hhhh
 
13.12.19
09:56
(41) перекрасилась. Стала блондинкой.
43 Масянька
 
13.12.19
11:05
(41) Почему такой вывод?
44 Масянька
 
13.12.19
11:05
(42) Блондинка - это не цвет волос (С) :)))))))))))))))))))))))))))
45 DrWatson
 
13.12.19
16:58
(38) Ответ был не в Если, а в Логические операции. Там написано:
Замечание! При вычислении логического выражения вычисляются только необходимые части выражения. Например, в выражении "(Цена > 0) И ПроверкаСуммы()", если Цена <= 0, то функция ПроверкаСуммы() не вызывается.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой