Имя: Пароль:
1C
1С v8
8.2 проблема с программой
0 flyman33
 
17.04.13
13:03
Здравствуйте, помогите, пожалуйста.
В общем сделал я ФормуЭлемента, на этой Форме есть несколько кнопок и каждая кнопка открывает excel или word документ. В справочнике я создал документ и на основе этой формы его заполнил. Но как только я создал в этом же справочнике еще документ, я понял что кнопки открывают excell и word документы из первого документа справочника. Как сделать, чтобы кнопки в разных документах справочника открывали разные excell или word документы? Помогите пожалуйста, очень прошу.
Можно как нибудь сделать так, чтобы при нажатии на кнопку создавался новый word документ и при сохранении текста потом открывался только он, а на других кнопках создавались уже другие новые word документы?
1 Wobland
 
17.04.13
13:06
офисные документы можно и без 1с употреблять
2 Wobland
 
17.04.13
13:07
запоказать собственное решение для хранения/выгрузки вордовских файлов? УФ
3 flyman33
 
17.04.13
13:09
У меня на каждой кнопки, такие команды:
Процедура Кнопка3Нажатие(Элемент)
 ЗапуститьПриложение("C:\1c2\2.docx");
КонецПроцедуры

И в итоге открывается только этот файл, а я хочу, чтобы открывался другой файл. Это как нибудь программно можно сделать( или не программно) ?
4 Velman
 
17.04.13
13:09
(2) запокажи) мы как раз документооборот внедряем
5 Wobland
 
17.04.13
13:10
(3) мда.. боюсь, тут живой пример не поможет даже
(4) а пжалста:

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
   НЗ=РегистрыСведений.ФайлыЗаданий.СоздатьНаборЗаписей();
   НЗ.Отбор.Задание.Установить(Объект.Ссылка);
   НЗ.Прочитать();
   Если НЗ.Количество() Тогда
       Данные=НЗ[0].Файл.Получить();
       РасширениеФайла=НЗ[0].Расширение;
   Иначе
       Данные=Неопределено;
       Расширение="";
   КонецЕсли;
   Если Данные<>Неопределено Тогда
       АдресФайла=ПоместитьВоВременноеХранилище(Данные, УникальныйИдентификатор);
   КонецЕсли;        
КонецПроцедуры

&НаСервере
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
   Если НЕ ЭтоАдресВременногоХранилища(АдресФайла) Тогда
       Возврат;
   КонецЕсли;
   НЗ=РегистрыСведений.ФайлыЗаданий.СоздатьНаборЗаписей();
   НЗ.Отбор.Задание.Установить(Объект.Ссылка);
   Запись=НЗ.Добавить();
   //к этому моменту ссылка не должна быть пустой
   Запись.Задание=Объект.Ссылка;
   Запись.Файл=Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(АдресФайла));
   Запись.Расширение=РасширениеФайла;
   НЗ.Записать();
КонецПроцедуры

&НаКлиенте
Процедура Загрузить(Команда)
   Диалог=Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
   Диалог.МножественныйВыбор=Ложь;
   Диалог.Фильтр="Документы Word|*.doc|Все файлы|*.*";
   Если Диалог.Выбрать() Тогда
       АдресФайла=ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(Диалог.ПолноеИмяФайла), УникальныйИдентификатор);
       Ф=Новый Файл(Диалог.ПолноеИмяФайла);
       РасширениеФайла=Сред(Ф.Расширение, 2);
       Модифицированность=Истина;
   КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура Показать(Команда)
   #Если ВебКлиент Тогда
       Предупреждение("Не доделано, не додумано");
   #Иначе
       Если НЕ ЭтоАдресВременногоХранилища(АдресФайла) Тогда
           Возврат;
       КонецЕсли;
       ВременноеИмя=ПолучитьИмяВременногоФайла(РасширениеФайла);
       ПолучитьФайл(АдресФайла, ВременноеИмя, Ложь);
       ЗапуститьПриложение(ВременноеИмя);
   #КонецЕсли
КонецПроцедуры
6 flyman33
 
17.04.13
13:14
А есть какие-нибудь элементы, в которые можно писать большой объем текста? Просто я их не нашел и начал загружать ворд документы.
7 Wobland
 
17.04.13
13:15
(6) неограниченная строка. любой комментарий в типовой
8 flyman33
 
17.04.13
13:16
Так там все будет в строку написано, а мне нужно чтобы было как в ворде, с абзацами и т.д.
9 Wobland
 
17.04.13
13:17
(8) расширенное редактирование у поля ввода даст тебе ентеры и табуляции

&НаКлиенте
Процедура ОткрытьФормуРедактированияМногострочногоТекста(Знач МногострочныйТекст, РезультатРедактирования, Модифицированность=Ложь, Знач Заголовок="")
   ТекстВведён=ВвестиСтроку(МногострочныйТекст, Заголовок, , Истина);
   Если Не ТекстВведён Тогда
       Возврат;
   КонецЕсли;
       
   РезультатРедактирования=МногострочныйТекст;
   Модифицированность=Истина;
КонецПроцедуры

&НаКлиенте
Процедура ЖалобыОписаниеСимптомаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
   ОткрытьФормуРедактированияМногострочногоТекста(Элемент.ТекстРедактирования, Элементы.Жалобы.ТекущиеДанные.ОписаниеСимптома, Модифицированность);
КонецПроцедуры
10 flyman33
 
17.04.13
13:23
Ок, а "чтобы при нажатии на кнопку создавался новый word документ и при сохранении текста потом открывался только он, а на других кнопках создавались уже другие новые word документы?"
Это реально сделать?
11 Wobland
 
17.04.13
13:29
(10) да
12 flyman33
 
17.04.13
13:31
(11) А можете показать код как это сделать? Очень прошу
13 Wobland
 
17.04.13
13:36
(12) ещё раз?
14 flyman33
 
17.04.13
13:37
Кстати, а можно в поле ввода или куда нибудь в другое место вставить таблицы и в последующем их редактировать?
15 Wobland
 
17.04.13
13:43
можно. но лучше выдохнуть, подумать, сформулировать задачу, подумать и только потом спросить совета
16 flyman33
 
17.04.13
13:54
А в 1с вообще можно создавать таблицы как в ексэле? Я хочу чтобы в поле ввода вместо текста была таблица.
17 Wobland
 
17.04.13
14:07
ты говоришь о поле табличного документа
18 flyman33
 
17.04.13
14:12
Ага, сейчас нашел его, кинул на форму, но как забивать данные в ячейки?
19 Wobland
 
17.04.13
14:17
лучше выдохнуть, подумать, сформулировать задачу, подумать и только потом спросить совета
20 Privalov
 
17.04.13
14:19
Откуда они все?
21 Wobland
 
17.04.13
14:21
8 дней до годовщины?
22 viramen
 
17.04.13
14:29
создать новый ком объект и открыть в нем
23 flyman33
 
17.04.13
14:46
В общем на форме у меня поле табличного документа появилось, я его заполняю данными, нажимаю "записать и закрыть", открываю, а данных, которые я забивал там нет ((
24 Wobland
 
17.04.13
14:57
(23) сочувствую
25 Wobland
 
17.04.13
14:58
//интересно, а в каком месте БД автор их ждёт?