|
аналог таблицызначений | ☑ | ||
---|---|---|---|---|
0
prishliemail
24.06.13
✎
14:28
|
Добрый день!
Дайте пожалуйста совет. У человека открывается форма со списком заявок. Он галочками выбирает те, которые ему нужно. И нажимает кнопку Сформировать. И по этим заявкам формируются документы. У меня есть обработка, где как раз есть эти заявки и возможность выбора галочками. При нажатии на кнопку Сформировать у нас следующая процедура: &НаКлиенте Процедура СформироватьДокумент(Форма, ЗначениеОтметки) ТЗ = Новый ТаблицаЗначений; СчитатьЗаявкиДляДокумента(ТЗ); Для Каждого Элемент Из ТЗ Цикл //тут модально открываем форму документа КонецЦикла; КонецПроцедуры В следующей процедуре я хочу записать в Таблицу значений нужные мне данные по всем заявкам выбранным &НаСервере Процедура СчитатьЗаявкиДляПоручения(ТЗ) ТаблицаЗаявок = Объект.ДанныеЗаявки.Выгрузить(); Для Каждого СтрокаТаблицы Из ТаблицаЗаявок Цикл Если СтрокаТаблицы.Выбор Тогда ТЗ.Вставить("Организация", СтрокаТаблицы.Организация); ТЗ.Вставить("Сумма", СтрокаТаблицы.СуммаДокумента); КонецЕсли; КонецЦикла; Возврат; КонецПроцедуры Вся проблема в том, что на клиенте нельзя создать таблицу значений. Можно созать списокзначений и тд. Но они мне не подходят, потому что я не могу там хранить данные по заявкам. Может Вы подскажите какой-то удобный жля хранений аналог таблицы значений? Ну или может какое-то более логичное решение проблемы? Спасибо! |
|||
1
prishliemail
24.06.13
✎
14:29
|
Ошиблась с названием второй процедуры. Там конечно
СчитатьЗаявкиДляДокумента(ТЗ) |
|||
2
sanja26
24.06.13
✎
14:34
|
Создать в реквизитах табличную часть обработки, заполнять на сервере, читать на клиенте
|
|||
3
andreymongol82
24.06.13
✎
14:35
|
(1) Как вариант сделать ТЗ реквизитом формы. Заполнить и читать на сервере, а на клиенте только открывать формы
|
|||
4
drongo-god
24.06.13
✎
14:35
|
(0) Кто сказал что ТЗ нет на клиенте?
Сделай ТЗ реквизитом формы. Заполняй ее как тебе нравится. После нужных отметок и нажатии "Сформировать" с клиента идешь на сервер, там же ее и обрабатываешь. |
|||
5
drongo-god
24.06.13
✎
14:37
|
(4) После обработки на серверее в нее же можно и положить все что получилось в результате обработки (напирмер обработалось или нет). Потом все это благополучно возвращается на клиент.
|
|||
6
mozzga
24.06.13
✎
14:43
|
(0) http://www.vitalinvent.com/1s/peredacha-tablitsi-znacheniy-s-servera-na-klient.html
ТЗ передавать как массив структур |
|||
7
drongo-god
24.06.13
✎
14:45
|
(6) Интерестно а зачем?
|
|||
8
mozzga
24.06.13
✎
14:50
|
как вариант
|
|||
9
drongo-god
24.06.13
✎
14:54
|
(8) Как вариант можно. Но если автор с ТЗ на форме не может разобраться, то через массив структур будет точно посложнее.
И использовать структуру вместо ТЗ лучшше когда нужно быстро находить строки по ключу, для автора я не думаю автора скорость в маленькой ТЗ важно будет. |
|||
10
НЕА123
24.06.13
✎
14:58
|
(0)
1. зачем сервер? на клиенте Для Каждого СтрокаТаблицы Из Объект.ДанныеЗаявки Цикл ........ КонецЦикла; 2. > ТЗ.Вставить("Организация", СтрокаТаблицы.Организация); что это должно делает? |
|||
11
prishliemail
24.06.13
✎
16:42
|
(2) Я наверно не совсем Вас понимаю...
У меня и так в реквизитах есть табличная часть (она называется ДанныеЗаявки). Как раз в ней и отображаются заявки. Я вот из процедуры на сервере и считываю с нее в ТЗ: Объект.ДанныеЗаявки.Выгрузить(); Вообщем-то так и получается, что я на клиенте только открываю форму новую для каждой строки ТЗ |
|||
12
prishliemail
24.06.13
✎
16:43
|
(4) Может быть и есть, но если я пишу на клиенте:
ТЗ = Новый ТаблицаЗначений; То в итоге мне выдается ошибка: "Тип не определен (ТаблицаЗначений) ТЗ = Новый <<?>>ТаблицаЗначений; (Проверка: Тонкий клиент)" |
|||
13
prishliemail
24.06.13
✎
16:44
|
(10) У меня управляемый интерфейс, так не получается
|
|||
14
mozzga
24.06.13
✎
16:51
|
(13) Т.к. на клиенте нет ТЗ, пердавайте туда массив структур, описано в (6)
|
|||
15
samozvanec
24.06.13
✎
16:54
|
(13) а что именно не получается?
|
|||
16
prishliemail
25.06.13
✎
12:32
|
Всем спасибо за помощь!
(14) И отдельно Вам за ссылку |
|||
17
НЕА123
25.06.13
✎
13:15
|
на (15) не видно ответа.
|
|||
18
prishliemail
25.06.13
✎
16:27
|
(17) Прошу прощение, изначально неправильно Вас поняла.
Сейчас внимательней начала разбираться и поняла, что как Вы сказали проще. Жаль, что осознание этого пришло ко мне достаточно поздно)) |
|||
19
EvgeniuXP
25.06.13
✎
23:31
|
в хранилище сохрани тз и из хранилища вытащи ТЗ :) если в лоб хочешь работать именно с ТЗ.
|
|||
20
Кокос
26.06.13
✎
00:35
|
(19) тз помоему в хранилище не затолкнуть. только список структур
|
|||
21
GROOVY
26.06.13
✎
00:40
|
(20) Все правильно EvgeniuXP говорит. Так и работают.
|
|||
22
НЕА123
26.06.13
✎
09:52
|
(19)(21)
ТЗ на клиенте? это как? |
|||
23
GROOVY
26.06.13
✎
12:00
|
(22) Это элементарно просто. ТЗ будет сконвертирована в ДанныеФормыКоллекция. Если создать реквизит формы, то это произойдет автоматом, если не создавать, то конвертировать надо руками.
|
|||
24
НЕА123
26.06.13
✎
14:54
|
(23)
то да. но по сабжу и так имеется ДанныеФормыКоллекция, где все данные уже есть и уходить на сервер не имеет смысла. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |