|
Передать таблицуЗначений на клиент | ☑ | ||
---|---|---|---|---|
0
Muwahhid
16.11.19
✎
10:21
|
Подскажите, как передать эту ТЗ на клиент, чтоб там я уже мог обойти ее циклом, и вытаскивать нужные мне значения?
Функция ПолучитьФайлыКартинки(ТекТовар) Запрос = Новый Запрос; Запрос.Текст = " |ВЫБРАТЬ | ВладелецФайла.Ссылка, | Ссылка |ИЗ | Справочник.НоменклатураПрисоединенныеФайлы КАК НоменклатураПрисоединенныеФайлы |ГДЕ | НоменклатураПрисоединенныеФайлы.ВладелецФайла.Ссылка = &АБВ"; Запрос.УстановитьПараметр("АБВ", ТекТовар); ТЗ = Запрос.Выполнить().Выгрузить(); КонецФункции |
|||
1
dmpl
16.11.19
✎
10:26
|
(0) В этом нет смысла. На клиенте через точку все равно не получится реквизиты получить.
|
|||
2
ДенисЧ
16.11.19
✎
10:26
|
Вытаскивай нужные значения на сервере. Зачем эти бессмысленные телодвижения туда-сюда? Это только на качелях приятно...
|
|||
3
acht
16.11.19
✎
10:26
|
(0) Никак.
Таблица значений на клиенте не существует. Используй, например, массив стурктур или создавай реквизит формы типа ДанныеФормыКоллекция и заполняй его контекстным вызовом. |
|||
4
acht
16.11.19
✎
10:28
|
(2) Детей не люблю. Люблю процесс. (:
|
|||
5
Muwahhid
16.11.19
✎
13:07
|
Сделал через массив, все отлично передается.
МассивФайлов = Новый Массив; Для каждого Стр из ТЗ цикл МассивФайлов.Добавить(Стр.Ссылка) КонецЦикла; Возврат МассивФайлов; |
|||
6
dmpl
16.11.19
✎
13:34
|
(5) Ну и что с этим потом на клиенте делать?
|
|||
7
palsergeich
16.11.19
✎
13:43
|
(3) Существует.
Запрещена сериализация/десериализация на клиенте и основной конструктор - Новый ТаблицаЗначений. Но если ты почитаешь в синтакс помошнике описание Новый, то догадаешься как 2м способом таки получить ТЗ на клиенте) Есть еще несколько способов) |
|||
8
fyn
16.11.19
✎
13:55
|
(7) Если имеентся в виду
то оно не работает по причине Тип не определен (ТаблицаЗначений) |
|||
9
acht
16.11.19
✎
13:57
|
(7) А давай ты без выпендривания напишешь здесь текст процедуры, создающей переменную этого типа, и завершающийся строкой Сообщить(ТипЗнч());
А мы позапускаем и оценим. |
|||
10
Мимохожий Однако
16.11.19
✎
14:14
|
(9) Погугли "таблица значений из массива"
|
|||
11
acht
16.11.19
✎
14:15
|
(10) На тонком клиенте, угу.
Напиши, пожалуйста, фрагмент кода, не будь трындежником! |
|||
12
acht
16.11.19
✎
14:17
|
Хуже фузинцев, чесслово...
|
|||
13
Мимохожий Однако
16.11.19
✎
14:19
|
||||
14
fyn
16.11.19
✎
14:21
|
(13) речь-то шла о существовании ТЗ на клиенте, а не про её эмуляцию в виде массива структур или подобного )
|
|||
15
acht
16.11.19
✎
14:22
|
(13) Этачо?
Разверни, пожалуйста, какую именно мыссль ты пытаешся высказать. На примере первой же ссылки. А потом - какое это имеет отношение к обсуждаемому. |
|||
16
Радим1987
16.11.19
✎
14:48
|
ОбщегоНазначения.ТаблицаЗначенийВМассив(ТаблицаЗначений)
|
|||
17
novichok79
16.11.19
✎
15:03
|
(16) только написать хотел ))
|
|||
18
fyn
16.11.19
✎
15:04
|
Ребят. Про массив структур всем известно. В (7) уверялось о существовании ТЗ на клиенте
|
|||
19
Радим1987
16.11.19
✎
15:08
|
(18) Тз существует на форме в виде данные формы коллекция)))
|
|||
20
fyn
16.11.19
✎
15:13
|
(19) спасибо, КЭП ) про это тоже известно.
Все-таки хочется понять, что имел в виду оратор из (7) |
|||
21
Радим1987
16.11.19
✎
15:34
|
(20) Он скорее всего работает на толстом клиенте вот и у него существует
|
|||
22
palsergeich
16.11.19
✎
15:39
|
(9) (8) половину сделал, а до второй не догадался, всё вот разжевать надо
И да прекрасно работает на тонком клиенте. ОписаниеТипа = Новый ОписаниеТипов("ТаблицаЗначений"); ТЗ = Новый(ОписаниеТипа.Типы()[0]); Я знаю еще минимум 2 способа это сделать, но извините, не скажу. Думаю этого достаточно что бы вы поверили что я не шучу |
|||
23
palsergeich
16.11.19
✎
15:43
|
ссылка для лентяеф.
https://yadi.sk/d/4ddQJJ_cbWxoBQ |
|||
24
Радим1987
16.11.19
✎
15:44
|
ОписаниеТипа = Новый ОписаниеТипов("ТаблицаЗначений");
ТЗ = Новый(ОписаниеТипа.Типы()[0]); ТЗ.Колонки.Добавить("Строка", Новый ОписаниеТипов("Строка")); Строка = ТЗ.Добавить(); Строка.Строка = "вавыапав"; Че за херня |
|||
25
palsergeich
16.11.19
✎
15:45
|
(24) Ну работает же)
|
|||
26
Радим1987
16.11.19
✎
15:48
|
(25) Угу
|
|||
27
palsergeich
16.11.19
✎
15:51
|
именно это и имелось в виду в (7)
Я на одном форуме увидел что чел хвастался что через ВК создает ТЗ на клиенте со скриншотами. Ну и подумал нельзя ли как нибудь без ВК, за вечер нашел 2 способа, позже нашел 3ий) |
|||
28
dmpl
16.11.19
✎
16:01
|
(25) Это бага, ее в любой момент могут поправить ;)
|
|||
29
palsergeich
16.11.19
✎
16:01
|
(28) У этой баги борода с 82
|
|||
30
fyn
16.11.19
✎
16:04
|
(29) мерси, реально работает, но мягко говоря нетривиально до этого додуматься.
|
|||
31
palsergeich
16.11.19
✎
16:04
|
(29) В любом случае использовать недокументированные возможности всегда на свой страх и риск.
|
|||
32
fyn
16.11.19
✎
16:06
|
(31) это очевидно. Но подобные фичи в 7.7 так и не пофиксили, а помогали они часто
|
|||
33
dmpl
16.11.19
✎
16:21
|
(32) Помню я как-то форматную строку написал не так, как в описании. Оно работало, но при определенных условиях выдавало другую дату. Так что нельзя исключать, что и тут есть какие-то глюки, из-за которых ТЗ официально в тонком клиенте недоступна.
|
|||
34
Iгор76
16.11.19
✎
16:22
|
(33)>> Никак.
Таблица значений на клиенте не существует. Як дети! Давно уже существует и примеров в Инете полно. 1. Структура массивов - где каждой колонке - имя в структуре и массив 2. Массив массивов. проще 1. работать идентично ТЗ |
|||
35
Iгор76
16.11.19
✎
16:22
|
(34)-->(3)
|
|||
36
Iгор76
16.11.19
✎
16:23
|
Я помню чрез структуру массивов делал - так там и обращения идентичны
|
|||
37
Muwahhid
16.11.19
✎
16:34
|
(6) Ну я использую это значение, для вывода Картинки, на форму Список Номенклатуры. https://1drv.ms/u/s!AjuGDoKdKWA3kcVBWIrjdIGJNSRjsA
Массив нужен был, чтоб приделать кнопку следующее фото, то есть, просматривать не только заглавную, но и остальные. Наверное, как то проще и быстрее, все можно сделать, но я слабо знаю 1с, и поэтому делаю как могу, и заодно учусь. Советы с форума, дают понять куда копать дальше. https://1drv.ms/u/s!AjuGDoKdKWA3kcVBWIrjdIGJNSRjsA |
|||
38
RomanYS
16.11.19
✎
16:40
|
(37) Яснее не стало. За самой картинкой ты всё равно на сервер пойдешь. Достаточно иметь реквизит формы типа индекс картинки, никаких массивов/ТЗ на клиенте для этого не надо
|
|||
39
Muwahhid
16.11.19
✎
17:16
|
(38) у меня есть на форме реквизит АдресКартинки с типом Поле Картинки. Ей присваиваю значение, и она выводит картинку.
Отправляю параметры с клиента, 1.ФайлКартинки, 2.УИ АдресКартинки = НавигационнаяСсылкаКартинки(КартинкаИмя, УникальныйИдентификатор); Далее на сервере все, это обрабатывается и возвращается мне в виде Двоичных данных. &НаСервереБезКонтекста Функция НавигационнаяСсылкаКартинки(ФайлКартинки, ИдентификаторФормы) АдресКартинки = ПрисоединенныеФайлы.ПолучитьДанныеФайла(ФайлКартинки, ИдентификаторФормы).СсылкаНаДвоичныеДанныеФайла; Возврат АдресКартинки; КонецФункции ___________ И работает. Я это подсмотрел в Форме Объекта, так сделано в типовой УТ 11.3. Через ПолучитьНавигационнуюСсылку, у меня ничего не вышло, хотя во многих примерах так и делают. Но разница с примерами, что реквизит с типом ХранилищеЗначений лежит у меня в другом справочники (НоменклатураПрисоединенныеФайлы),а в справочнике Номенклатура, ссылочный тип этого реквизита, а у них в самом справочнике Номенклатура. Вообще пришел к выводу, что из-за этого у меня не выходит, а побороть не смог, поэтому сделал, тк сделано в форме Объекта. |
|||
40
Мимохожий Однако
16.11.19
✎
17:21
|
Только последнее сообщение к сабжу никак не соотносится. )
Да и ладно. |
|||
41
Muwahhid
16.11.19
✎
17:30
|
(40) У меня два случая, первый наводишь (приАктивизацииСтроки) и выходит фото.
Второй случай при клике СледФото, просматриваю не только заглавное, но след фото. У товаров где их соответственно, больше чем одно. Для этого мне и нужно было несколько ФайловКартинки получить за раз, чтоб там же их перебрать и передать в функцию след. файл. |
|||
42
RomanYS
16.11.19
✎
17:40
|
(41) можно не получать несколько, а получить 1 следующий (Выбрать первые 1). Хотя оптимально может и все сразу получить
|
|||
43
craxx
16.11.19
✎
17:45
|
(0) Преобразовать ТЗ в массив структур, и в таком виде передать
|
|||
44
Muwahhid
16.11.19
✎
17:46
|
(42) Как из Функции получать именно след ФайлКартинки я не знаю, если подскажешь, буду благодарен.
У меня так получилось, только первые два фото перебирать. |
|||
45
RomanYS
16.11.19
✎
17:50
|
(44) я про такой вариант:
Запрос.Текст = " |ВЫБРАТЬ первые 1 | ВладелецФайла.Ссылка, | Ссылка |ИЗ | Справочник.НоменклатураПрисоединенныеФайлы КАК НоменклатураПрисоединенныеФайлы |ГДЕ | НоменклатураПрисоединенныеФайлы.ВладелецФайла.Ссылка = &АБВ и Ссылка > &СсылкаНаТекущуюКартинку"; Вместо ссылки можно использовать любое поле по которому хотим упорядочивать картинки |
|||
46
Сияющий в темноте
16.11.19
✎
18:30
|
если владелец задан,то чем вам массив ссылок не подошел?
если для всех владельцев,то сгруппировать по оным и в соответствие владелец=>массив ссылок,запрос по группировкам в такое без проблем превращается и это,данные формы коллекция-это таблица значений на клиенте,но там индексирования нет если хочется именно таблицу,то внешнее соединение к базе и в нем таблицу значений-будет работать без проблем. |
|||
47
acht
16.11.19
✎
18:40
|
(24) Круто. А в веб клиенте работает?
|
|||
48
Сияющий в темноте
17.11.19
✎
00:07
|
в web-клиенте язык 1с переводится в javascript и именно там таблицы значений,в принципе,нет - поэтому 1с решила ее спрятать везде,но,видимо,не очень хорошо спрятала.
|
|||
49
Сияющий в темноте
17.11.19
✎
00:21
|
кроме того,в толстом клиенте в управляемом режиме ТаблицаЗначений прекрасно существует
и создавать ее можно просто через Новый ТаблицаЗначений и ТЗ.ВыбратьСтроку прекрасно работает. |
|||
50
Сияющий в темноте
17.11.19
✎
00:25
|
прикольно то,что в тонком клиенте ВыбратьСтроку тоже отрабатывает,хотя таблицу приходится создавать через (24)
|
|||
51
Сияющий в темноте
17.11.19
✎
00:31
|
Но,передать таблицу на сервер с тонкого клиента не вышло:отсутствует отображение для типа
хотя,с толстого улетела на сервер без вопросов. |
|||
52
Надо работать
17.11.19
✎
01:50
|
Если ТЗ можно передать как массив структур - то какой смысл был запрещать сериализацию? Чтобы прогам больше за строки кода платили?
Все таки 1С нелогичный зверек |
|||
53
Рэйв
17.11.19
✎
07:10
|
(0)Сталкивался с этой херней.
Возвращай массив структур,с ключами именами колонок.. Могу скинуть код если не соображаешь. |
|||
54
Сияющий в темноте
17.11.19
✎
10:49
|
В бсп,насколько я помню,есть функция преобразования.
|
|||
55
Сияющий в темноте
17.11.19
✎
10:51
|
Просто,если бы таблицу значений в тонком разрешили,то в web можно было и не заглядывать,большинство решений бы писало "не поддерживается"
|
|||
56
dmpl
17.11.19
✎
12:34
|
(55) А в чем проблема реализовать ТЗ в web-клиенте? Разве что с индексами немного повозиться. Но ведь можно же и просто заглушку поставить.
|
|||
57
Cthulhu
17.11.19
✎
13:07
|
(52): "какой смысл" - как раз очень даже понятно.
попытка охватить веб -> трансляция через тонкого в жаво-клиент с вырезанием из функционала всего, что не есть кошерным для жавы. |
|||
58
dmpl
17.11.19
✎
14:25
|
(51)(52) ТЗ, кстати, отлично сериализуется в том же web-сервисе, например. Так что ограничение тут чисто искусственное.
(57) JS не умеет создавать такие простые объекты? |
|||
59
Cthulhu
17.11.19
✎
16:59
|
(58): "тание простые" - нет, "настолько простые" - да.
|
|||
60
Cthulhu
17.11.19
✎
17:01
|
(58): +(оборвалось на абзаце):
д аналогия "на пальцах", несомненно страдающая кривизной - но по сути: охват англоговорящей аудитории подразумевает умение изъясняться на арглийском понятным этой аудитории образом - а не даже частичное ее переучивание на понимание понятных актору терминов понятным актором образом |
|||
61
acht
17.11.19
✎
17:21
|
(60) Я упрощу, пожалуй:
Проще научить негров английскому, чем локализовать софт на язык ибибио. |
|||
62
Сияющий в темноте
19.11.19
✎
00:33
|
у меня в javascript прекрасно индексированная таблица живет и работает,да большое количество строк она переварить не может,но работает
А 1с решила,что не надо. у меня,правда и mdi-интерыейс в браузере работал пока всем не надоело окна по рабочему столу раскидывать. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |