Имя: Пароль:
1C
1С v8
считывание из excel в таблицу значений, управляемые формы
0 Yukka
 
07.03.12
09:49
Доброе утро!
В управляемом приложении объект ТаблицаЗначений доступен только на сервере.

Но на сервере приложение ексель не может открыть файл, который находится на компьютере клиента, как можно решить эту проблему?

Хочется, чтобы была возможно считать данные из экселевского файла, который пользователь выбирает у себя на локальном диске, в таблицу значений.
1 kible
 
07.03.12
09:50
(0) Думаю что на сервер надо файл загрузить.
2 Рэйв
 
07.03.12
09:51
(0)Прочитай на клиенте в таблицу значений и отправь ее на сервер.
3 Maxus43
 
07.03.12
09:52
(2) на клиенте есть ТЗ?
4 Рэйв
 
07.03.12
09:52
(0)У тебя ТЗ куда надо писать - объект базы чтоли?
5 Рэйв
 
07.03.12
09:53
(3) А что
ТЗ =Новый ТаблицаЗначений;

Не работает на клиенте?
6 Maxus43
 
07.03.12
09:53
(5) нет :)
7 Рэйв
 
07.03.12
09:54
(6)Во блин...  Дожили.
8 Maxus43
 
07.03.12
09:54
(7) велком ту 8.2
9 Yukka
 
07.03.12
09:55
(0)таблица нужна, чтобы потом обработать данные, в нее будут загружаться данные из нескольких файлов, а потом на печать
10 Stim
 
07.03.12
09:55
&НаКлиенте
Процедура загрузить(Команда)
   // Вставить содержимое обработчика.
   
Док = ПолучитьCOMОбъект(путьКФайлу);
наим = Док.Sheets(1).Cells(1,2).Value;
сч = 1;
пока СокрЛП(наим) <> ""  Цикл
наим = Док.Sheets(1).Cells(сч,2).Value;
ДобавитьстрокуВТЗСервер(наим)
сч = сч + 1;
КонецЦикла
11 Maxus43
 
07.03.12
09:56
по сабжу - файл во временное хранилище, оно уедет на сервер. там читаем и т.д. Пример в книге Разработка управляемого интерфейса, там про справочник ФизЛица и фотки сотров. Точно не вспомню щас
12 Yukka
 
07.03.12
09:59
(10) т.е. ДобавитьстрокуВТЗСервер  - процедура на сервере?
13 Рэйв
 
07.03.12
09:59
(8)Точнее ту УФ:-)
Хорошо что я с ними не работал вплотную.Гемор тот еще похоже.
14 ДенисЧ
 
07.03.12
10:01
Используй ТЧ обработки...
15 Maxus43
 
07.03.12
10:01
(13) Програмить сложней, но есть и плюсы) сам вплотную не работал, только книгу прочитал
16 Maxus43
 
07.03.12
10:02
(12) да, но лучше (14), в (10) ты будеш каждую строку гонять на сервер, это называется изнасилование. а так всю ТЧ одним махом туда передаш
17 vmv
 
07.03.12
10:06
ага, я тоже для загрузок из эксель использую ОбработкаОбъект

преимущества
- ее можно отвязать от конфы
- можно использовать функционал табличных частей
- можно объявить обработку как реквизит формы того объекта куда грузим
- можно сделать сколько угодно вариантов форм загрузки в этой обработке
- можно работать с клиентом и сервером не "захламляя" объект базы данных "левым" или временным функционалом

недостатки - лень матушка, ведь проще делать все прям сдеся и сразу, как привыкли адепты 7.7 и 8.1)
18 Yukka
 
07.03.12
10:06
ок, спасибо, получается, или в тч обработки, или файлы во временное хранилище на сервер и там читать. В первом случае это будет на клиенте работать, а во втором на сервере?
19 vmv
 
07.03.12
10:10
(18) что и когда будет работать на клиенте или сервере зависит исключительно от того, что ты делаешь с представлением данных источника
представлений данных два в рассматриваем случае
- данные в хранилище
- данные в тч обработки

и хранилище и обработка доступны и на сервере и на клиенте, а вот как ты будешь эту инфу обрабатывать - это уже науке неизвестно
20 vmv
 
07.03.12
10:15
на посошок, при загрузке небольших эксель-файлов строгих форматов с листами и типизироваными таблицами я на обработке клонирую состав листов и таблиц и ввожу булевое поле по стилю стандартных обработок "Отметить все", "Снять все".
Иногда без этого никак, когда нужно просто добавить строки из файла, а не грузить их тупо скопом по новой
AdBlock убивает бесплатный контент. 1Сергей