Имя: Пароль:
1C
1С v8
Чем можно заменить таблицу значений
0 bizon2008
 
24.05.14
15:19
Доброго дня.
Таблица значений не работает под тонким клиентом. Какой аналог посоветуете?
Спасибо.
1 Александр_
Тверь
 
24.05.14
15:22
э... кто тебе сказал что не работает? Вполне себе работает.
2 NcSteel
 
24.05.14
15:22
(0) Обсосано миллион раз, например массив структур.
3 Ненавижу 1С
 
гуру
24.05.14
15:22
зачем она тебе там? что ты хочешь?
4 pumbaEO
 
24.05.14
15:23
(0) а что езьм Таблица значений?
МАССИВ плюс структура ? Или колончный вид Структура с массивом в значениях.

А вообще реквизит формы, в скрытой группировке.
5 NcSteel
 
24.05.14
15:24
(4) На каждый чих загружать форму реквизитами? не удевительно что жалуются на тяжеловесность форм
6 Александр_
Тверь
 
24.05.14
15:28
1С всеми силами делает тонкого клиента, а программисты 1С кладут и кладут... кладут и кладут, таким образом делая его все толще и толще :)
7 pumbaEO
 
24.05.14
15:34
(5) ERP 2.0 главное не открывай, там не на каждый чих, а на каждый пук...
8 Ненавижу 1С
 
гуру
24.05.14
15:37
(6) хреново она его делает, если честно
9 bizon2008
 
24.05.14
15:37
(1) Дык ошибка вываливается.
(2)Посмотрю.

(3)Хочу вот такое. Передача с сервера на клиента.

// Выполним запрос к справочнику номеклатуры
// Результат Таблицазначений с информацией о весовом таваре
&НаСервереБезКонтекста
Функция ПолучитьИнформациюОВесовомТоваре()
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
            |Номенклатура.Код,
            |Номенклатура.Наименование,
            |Номенклатура.Артикул
        |ИЗ
            |Справочник.Номенклатура КАК Номенклатура
        |ГДЕ
            |Номенклатура.Весовой = Истина";
    Результат = Запрос.Выполнить();
    ТаблицаЗначений = Результат.Выгрузить();
    Возврат ТаблицаЗначений;
КонецФункции //    



// Создаем строку записи ТаблицыЗначений для CSV-файла
&НаКлиенте
Функция СоздатьСтрокуCSV(записьТаблицаЗначений)    
    стрЗапись = "";    
    Для каждого поле Из записьТаблицаЗначений Цикл
        стрЗапись = "" + стрЗапись + Строка(поле) + ";" ;
    КонецЦикла;
    Возврат стрЗапись;
КонецФункции


// Создаем текст CSV:
&НаКлиенте
Функция СоздатьДанныеCSV(ТаблицаЗначений)

    текстЗапись="";
    Для каждого запись из ТаблицаЗначений Цикл
        // для каждой записи создаем строку CSV
        стрЗапись = СоздатьСтрокуCSV(запись);            
        // выводим сообщение в панель состояний
        Сообщить(стрЗапись);
        текстЗапись = текстЗапись + стрЗапись + Символы.ПС;
    КонецЦикла;        

    Возврат текстЗапись;

КонецФункции //

// Запишем данные в файл
&НаКлиенте
Функция ЗаписатьCSV(текст,имяФайла)              
    //кодировка = КодировкаТекста.ANSI;
    кодировка = КодировкаТекста.UTF8;

    ТекстовыйФайлЗапись = Новый ЗаписьТекста(имяФайла,Кодировка);            
    ТекстовыйФайлЗапись.ЗаписатьСтроку(текст);
    ТекстовыйФайлЗапись.Закрыть();    
    Возврат 0;

КонецФункции //

// Основная логика:
&НаКлиенте
Функция ВыгрузитьВCSV(имяФайлаCSV);
    сообщить("Выгрузить в формате CSV в " +  имяФайлаCSV);

    ТаблицаЗначений = ПолучитьИнформациюОВесовомТоваре();
    текст = СоздатьДанныеCSV(ТаблицаЗначений);
    ЗаписатьCSV(текст,имяФайлаCSV);
    Сообщить(имяФайлаCSV + " -[OK!]" );
КонецФункции

//ВыгрузитьКонтактную_Информацию_Контрагентов_В_CSV("C:\Temp\ki.csv");

&НаКлиенте
Процедура Выгрузить(Команда)

Пинайте. Буду благодарен.
10 Александр_
Тверь
 
24.05.14
15:47
(9) а почему не хочешь сформировать свой файл на сервере, а после просто передать его на клиента и записать?
11 bizon2008
 
24.05.14
15:49
(10)Протормозил. Это как?
12 Александр_
Тверь
 
24.05.14
15:53
(11) ну вот так же как ты делаешь, только на сервере.
Потом помещаешь файл во временное хранилище (на сервере) и получаешь его на клиенте. Записываешь. Все
13 Александр_
Тверь
 
24.05.14
15:54
если не знаешь как работать с временным хранилищем - почитай, оч. много тем
https://www.google.ru/search?as_sitesearch=forum.mista.ru&q=%E2%F0%E5%EC%E5%ED%ED%EE%E5+%F5%F0%E0%ED%E8%EB%E8%F9%E5
14 Александр_
Тверь
 
24.05.14
15:56
почему на тонком клиенте нет таблицы значений? Да потому, что в соответствии с новой философией она там и не нужна.
Тонкий клиент предназначен для отображения данных, интерфейсной работы (диалоги всякие) ну и самая легкая работа - сложить пару чисел. Все.
Остальное надо делать на сервере и каких-либо серьезных причин не использовать сервер - просто нет. На сервере доступно все что тебе нужно.

Единственная тонкость - это передать результат с сервера на клиент.
15 bizon2008
 
24.05.14
15:59
(12) Понял. Не годится. Мне надо потом все рано это список видеть, он дальше пойдет.
(14)Да понятно что не нужна. Но весы блин к клиентской машине то подключены, и их софт там же стоит. Так что нужны данные.
16 Александр_
Тверь
 
24.05.14
15:59
ИМХО совершенно не верно пытаться применить старые методы, старые подходы наперекор новой методологии.
Извернуться можно, но получиться что-то типа кода семерошника, который только пересел на восьмерку.
17 Александр_
Тверь
 
24.05.14
16:02
(15) не очень понятно, что же ты хочешь в итоге получить.
18 bizon2008
 
24.05.14
16:07
(16) Это понятно. Новые пока освоены плохо. Вот и не пролезаю где-то на поворотах.
(17)Набор записей из запроса на клиенте. В принципе их можно только и показать. Но у меня результат выгрузки с весов в обратке идет. Поэтому в обработке надо табличную часть с сравнением получилось или нет. По логике их тоже на сервер гнать. Но слабоват я, пока, в УФ.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс