Имя: Пароль:
1C
1С v8
v8: Что такое соотвествие и для чего оно используется? в синтакс. помощнике непонятно
0 Сергей-88
 
03.11.11
11:14
Добрый день!
Можете объяснить понятным ЯЗЫКОМ на примерах, что такое соотвествие в языке 1С 8 и для каких целей он используется?
1 Не Печенкин
 
03.11.11
11:15
коллекция пар (Ключ, Значение), причем Ключ уникален в коллекции
3 Defender aka LINN
 
03.11.11
11:15
Мда...
4 Сергей-88
 
03.11.11
11:16
Не Печенкин а чем оно отличается от СТРУКТУРЫ и почему "Соотвествие" нельзя просмотреть в табло как структуру?
5 Поручик
 
03.11.11
11:17
Продам Простые примеры разработки от Митичкина. Дорого.
6 ДенисЧ
 
03.11.11
11:17
(4) структура - это одна пара. А соответсивие - коллекция.
7 Поручик
 
03.11.11
11:17
и научу читать. За отдельное дорого.
8 Не Печенкин
 
03.11.11
11:17
(4) Структура это в каком-то смысле частный случай Соответвие, Ключ - только строка-идентификатор, ну и доп. свойства
9 Не Печенкин
 
03.11.11
11:17
(6) бред
10 МихаилМ
 
03.11.11
11:18
(0)
в типовых реализовано 90 процентов функционала

разве так сложно код посмотреть

или приятней выслушивать обвинения в слабоумии ?.
11 Не Печенкин
 
03.11.11
11:18
12 PR
 
03.11.11
11:20
В структуре ключ всегда текстовый, в соответствии не обязательно
13 PR
 
03.11.11
11:20
Поручик, предупреждение
14 Не Печенкин
 
03.11.11
11:21
(12) не просто текстовый - идентификатор
15 МишельЛагранж
 
03.11.11
11:22
на самом деле парень прав - у 1с дебильная документация.
В Структуре Ключ - всегда Строка (причем итменовать нужно по правилам 1С), Значение - любой тип данных.
В Соответствии - Ключ м.б. любым типом, Значение - тоже любой тип данных; но и получить значение элемента Соответствия можно только по тому же Ключу: т.е. чтобы прочитать Значение элемента, должен быть тот же тип данных в Ключе, как и при создании Ключа.
16 МишельЛагранж
 
03.11.11
11:24
вот так должна выглядеть ДОКУМЕНТАЦИЯ, а не этот набор предложений "по мотивам", который выдают за "документацию".
17 Не Печенкин
 
03.11.11
11:24
(15) "должен быть тот же тип данных в Ключе, как и при создании Ключа"
вообще то должен быть не просто того же типа, а быть равным ему ))
18 Сергей-88
 
03.11.11
11:25
Спасибо за ответы! :)
тема закрыта!
19 Aleksey
 
03.11.11
11:26
"Структуру" часто используется в качестве способа передачи параметров в процедуры и функции.

ВыбраннаяНоменклатура = Новый Структура;
ВыбраннаяНоменклатура.Вставить(«Шифр», Номенклатура.Шифр);
ВыбраннаяНоменклатура.Вставить(«НоменклатурнаяГруппа», Номенклатура.НоменклатуaрнаяГруппа);
ДобавитьНоменклатуруВТЧТовары(ВыбраннаяНоменклатура);


При "Соответствии" связывать два разных объекта системы, что позволяет избежать ипользования ТЗ с двумя колонками.

СоответствиеНоменклатур = Новый Соответствие;
СоответствиеНоменклатур.Вставить(НашаНоменклатура, НоменклатураКонтрагента);


У этих объектов одинаковые методы для добавления и удаления элементов, но разные для получения.

У структуры имеется метод "Свойство" который проверяет есть ли такой ключ в коллекции и возвращает в переменную полученное значение. Если ключа нет, то возвращается Неопределено. При этом метод является функцией и возвращает Булево(Истина или Ложь)

НоменклатурнаяГруппа = Неопределено;
КлючСуществует = ВыбраннаяНоменклатура.Свойство("НоменклатурнаяГруппа", НоменклатурнаяГруппа);



В Соответствии для этого есть метод "Получить" в параметрах которого передается ключ парное значение которого мы ищем. Т.е. нельзя проверить есть ли такой ключ, а нужно точно знать, что он существует.



НоменклатураКонтрагента = СоответствиеНоменклатур.Получить(НашаНоменклатура);
20 Mort
 
03.11.11
11:26
(16)  В (15) это не документация, это сочинение на тему как я провёл лето.
21 unregistered
 
03.11.11
11:26
(5) >> Продам Простые примеры разработки от Митичкина. Дорого.

Видимо будет ОЧЕНЬ дорого... Учитывая, что Митичкин такой книжки не писал ни когда....
22 Сергей-88
 
03.11.11
11:31
И последний вопрос - Почему Соотвествие нельзя просмотреть в отладчике как Структуру?? не видно что в ней находится(
23 unregistered
 
03.11.11
11:33
(0) >> объяснить понятным ЯЗЫКОМ на примерах

Пример:

Свойство записи регистра бухгалтерии "Субконто" (Дт|Кт для регистра с поддержкой корреспонденции) является соответствием, где ключ - вид субконто (тип - ПланВидовХарактеристикСсылка), а значение - значение субконто (соответствующего типа, определенного для вида субконто).
24 unregistered
 
03.11.11
11:34
(22) У всех видно. У тебя отладчик неправильный какой-то...
25 Mort
 
03.11.11
11:34
(22) Враки, можно. Но не как структуру.
26 Сергей-88
 
03.11.11
11:35
У меня в отладчике при просмотре соотвествия толька указано тип и значение - соотвествие, а тчо в нем сидит нету.....
27 МишельЛагранж
 
03.11.11
11:35
(17) как раз про совпадение значечков не забывают, а вот тот же тип данных - постоянно )
(20) сочиннеие - это в "документаци" от 1с. А это - именно подробное документирование возможностей программы.
28 Поручик
 
03.11.11
11:37
(21) Давно в неё не заглядывал. Автор творения Габец. Тогда будет ещё дороже.
29 hhhh
 
03.11.11
11:42
(26) а если F2 нажать?
30 izekia
 
03.11.11
11:43
еще у структуры в ключах не допускаются пробелы и другие символы, а в соответствии можно
31 Fish
 
03.11.11
11:46
(27) Те, кто имеют представление про типы данных, вряд ли забудут :))) Как правило, забывают те, кто никогда не видел других языков, кроме 1С :))
32 hhhh
 
03.11.11
12:00
(27) теперь разработчики не пишут документацию. Им просто некогда. Документацию пишут люди, далекие от 1С и далекие от программирования. Для них самое важное, чтобы поля, абзацы были нормальные и картиночки были красивые, дизайн.
33 1nf
 
03.11.11
12:05
(26) а отладчик у тебя лицензионный?
34 Сергей-88
 
03.11.11
12:29
1nf нет)
35 1nf
 
03.11.11
12:30
(34) поэтому и не показывает :)
36 Сергей-88
 
03.11.11
12:47
Стоп! 1С лицензионная ведь, только вот перешли на 8.2 не давно у нас УТ 10.3
37 izekia
 
03.11.11
12:48
(36) про лицензию шутка ... не отвлекайся, пиши еще