Имя: Пароль:
1C
1С v8
есть ли какая-нибудь команда типа "показать"
,
0 Dyspho
 
16.03.16
08:20
Можно ли сделать кнопку, которая будет выводить на печать таблицу?
Если да, то каким образом?
56 Dotoshin
 
16.03.16
10:05
(53) А у тебя кнопка - "Печать" или как там ты ее обозвал, где находится, в какой форме?
57 Dyspho
 
16.03.16
10:07
(56) Форма документа
58 Gunner
 
16.03.16
10:07
(55) Вот теперь уже понятно))Зачем вообще тогда документ? Где расположена кнопка печати, при нажатии на которую этот бланк должен распечататься? И вообще ЗАЧЕМ хранить бланк в виде макет в конфе? Не проще ли в режиме предприятия добавить файл бланка или хранить отдельно от 1с в экселе
59 DDwe
 
16.03.16
10:09
(58) И вообще ЗАЧЕМ хранить бланк в виде макет в конфе?  см.(45)
60 Gunner
 
16.03.16
10:11
(59) жесть))))))))))
61 Остап Сулейманович
 
16.03.16
10:16
(57) У табличного документа есть метод Вывести(). Его можно юзать не заполняя вообще никаких параметров макета.
Пример :

Таб = Новый Табличный Документ;
Таб.Вывести(ПолучитьМакет("Тынц"));
Таб.Показать();

Все.
62 Dotoshin
 
16.03.16
10:16
(58) >> Не проще ли в режиме предприятия добавить файл бланка или хранить отдельно от 1с в экселе
Ему так повелели, см. (42) и (45)
63 Остап Сулейманович
 
16.03.16
10:19
(62) Да нормальная постановка задачи. При небольшом количестве утвержденных бланков шарить их по сети ничем не лучше, чем хранить их в базе и не напрягать пользователей поиском по файловой системе.
64 Dyspho
 
16.03.16
10:22
(58) Ну вот мне надо, чтобы кнопка печать была в документе СтрокаОтчетаСотрудника
65 Gunner
 
16.03.16
10:25
(63) Да, но не в конфе. Скорее всего есть возможность в erp хранить в базе в режиме предприятия
66 Dyspho
 
16.03.16
10:26
(61) &НаСервере
Процедура ДвойнаяСОТ(Команда)
    Таб = Новый ТабличныйДокумент;
Таб.Вывести(ПолучитьМакет("ДвойнаяСОТ"));
Таб.Показать();


КонецПроцедуры

{Документ.СтрокаОтчетаСотрудника.Форма.ФормаДокументаУправляемая.Форма(138,13)}: Процедура или функция с указанным именем не определена (ПолучитьМакет)
Таб.Вывести(<<?>>ПолучитьМакет("ДвойнаяСОТ"));  (Проверка: Сервер)
67 SadrArt
 
16.03.16
10:27
(57) Если кнопка находится на Форме документа как тогда возможно что
> Если не выделяю документ, то "невоможно применить к выбранному объекту", если выделяю док., ток печатает

Как можно на форме документа выделять или не выделять документ?
68 Fish
 
16.03.16
10:27
(63) А если бланк изменится, то надо будет конфу менять?
69 Dyspho
 
16.03.16
10:27
(67) Ну вот если к примеру документов 0
70 Fish
 
16.03.16
10:28
(66) И кому ты собрался на сервере табдокумент показывать?
71 Dotoshin
 
16.03.16
10:28
(57) Тогда объясни, как ты нажимаешь на эту кнопку, не выделяя документ?
72 Gunner
 
16.03.16
10:29
(64) 2 строчки кода
    Макет = ПолучитьОбщийМакет("Макет");
    Макет.Показать();
73 Dotoshin
 
16.03.16
10:30
(69) То есть ты создаешь новый документ и не заполняя и не записывая его жмешь кнопку "Печать"? Я угадал?
74 Dyspho
 
16.03.16
10:31
(73) Я не создаю документ, я захожу в СтрокаОтчетаСотрудника, жму там ДвойнаяСОТ и по нажатию выводится на печать таблица с текстом без параметров
я её распечатываю
иду к клиенту
делаю работу
заполняю от руки таблицу
75 Остап Сулейманович
 
16.03.16
10:32
(72) Можно и в одну. Если в обычном приложении

ПолучитьОбщийМакет("Макет").Показать();

)))
76 Fish
 
16.03.16
10:33
"мне надо, чтобы кнопка печать была в документе СтрокаОтчетаСотрудника"
"Ну вот если к примеру документов 0"
"Я не создаю документ, я захожу в СтрокаОтчетаСотрудника, жму там ДвойнаяСОТ"

Имхо, это уже клиника :))
77 Dotoshin
 
16.03.16
10:33
(74) >>я захожу в СтрокаОтчетаСотрудника
Тогда поясни, что это - СтрокаОтчетаСотрудника ?
и что такое ДвойнаяСОТ?
78 Gunner
 
16.03.16
10:33
(75) ну да)) все равно чушь какая-то))зачем вообще в этот документ заходить, если оттуда данные не берутся?
79 Dyspho
 
16.03.16
10:34
(77) СтрокаОтчетаСотрудника - в конфигураторе это документ, в предприятии это список документов, ДвойнаяСОТ - кнопка, по нажатию которой выводится на печать макет
80 Dyspho
 
16.03.16
10:34
(78) Яперепутал, не заходить в документ, в список документов
81 Dotoshin
 
16.03.16
10:36
(79) То есть у тебя кнопка не в форме документа, а в форме списка документов?
82 Gunner
 
16.03.16
10:36
(80) Управляемое приложение?
83 Остап Сулейманович
 
16.03.16
10:36
У ТС вообще отсутствует понимание о макетах, табличных документах, о режимах работы и вообще об 1С. Исходя из (66).
Ошибка 1. Показать() в режиме &НаСервере.
Ошибка 2. ПолучитьМакет("ДвойнаяСОТ"). Как 1С должна понять, кто такой этот "ДвойнаяСОТ" и где она его должна получать?
84 Dotoshin
 
16.03.16
10:36
(82) Судя по всему да....
85 Остап Сулейманович
 
16.03.16
10:37
(82) Ессессьно. см. (66)
86 Остап Сулейманович
 
16.03.16
10:38
Лучшим выходом будет выложить весь код команды и объяснить как вызов команды вставить на форму списка. Намеками ТС не поймет.
87 Dyspho
 
16.03.16
10:38
(81) да, (82) да
88 Остап Сулейманович
 
16.03.16
10:40
(87) Колись - где (в какой точно ветке) конфигурации лежит твое вот это вот "ДвойнаяСОТ"
89 Dyspho
 
16.03.16
10:41
(88) Есть в документе, есть в общих макетах
пытался и от туда и от туда получить
90 Fish
 
16.03.16
10:41
Хм. Судя по Никогда не программировал, может быть подскажет кто, как "обучаться", вменяемых ответов от ТС ждать сложно. А автору надо для начала изучить азы.
91 Dotoshin
 
16.03.16
10:41
(88) Это похоже кнопка в форме списка документов СтрокаОтчетаСотрудников.
92 Dyspho
 
16.03.16
10:42
&НаКлиенте
Процедура ДвойнаяСОТ(Команда)
     ПолучитьМакетНаСервере();
    
КонецПроцедуры
&НаСервере
Функция ПолучитьМакетНаСервере()

Макет = ПолучитьОбщийМакет("ДвойнаяСОТ");
Макет.Показать()
КонецФункции


что не так?
93 Dyspho
 
16.03.16
10:42
(91) ДвойнаяСОТ это вообще макет, но кнопку я назвал так же
94 Gunner
 
16.03.16
10:43
(92) и кому показывать будешь?))
95 Записьдампа
 
16.03.16
10:44
(92) В том месте, откуда ты код скопировал, что-то про приложение бало написано?
96 Dotoshin
 
16.03.16
10:44
(92) Глобальный контекст.ПолучитьОбщийМакет (Global context.GetCommonTemplate)
Глобальный контекст (Global context)
ПолучитьОбщийМакет (GetCommonTemplate)
Синтаксис:

ПолучитьОбщийМакет(<ОбщийМакет>)
Параметры:

<ОбщийМакет> (обязательный)

Тип: Строка; ОбъектМетаданных: Макет.
Имя общего макета, как оно задано в конфигураторе, или объект описания метаданного общего макета.
Возвращаемое значение:

Тип: ТабличныйДокумент; ТекстовыйДокумент; другой объект, который может быть макетом.

Описание:

Получает один из общих макетов конфигурации.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Пример:

// Получение общего макета по имени
МакетСтруктурыКонфигураци = ПолучитьОбщийМакет("СтруктураКонфигурации");
// Получение общего макета по объекту описания метаданного
МакетСтруктурыКонфигураци = ПолучитьОбщийМакет(Метаданные.ОбщиеМакеты.СтруктураКонфигурации);

Ключевая фраза - Доступность.
97 Gunner
 
16.03.16
10:44
Макет где расположен? В общих макетах или в этом документе?
98 Dyspho
 
16.03.16
10:45
(97) И там и там

Я уже понял что ПОказать на сервере нельзя
99 Fish
 
16.03.16
10:46
(98) А в чём отличие функции от процедуры, знаешь?
100 Остап Сулейманович
 
16.03.16
10:46
(92)
1. Получить макет можно двумя способами:
Макет = ПолучитьОбщийМакет(ИмяМакета);
Это если макет лежит в ветке общие->Макеты

Макет = Документы.АктОсмотра.ПолучитьМакет(ИмяМакета);
Это если макет лежит в ветке какого либо конкретного объекта конфигурации. В данном случае в ветке ->Документы->АктОсмотра->Макеты.
101 Остап Сулейманович
 
16.03.16
10:46
+ (100) Твой способ получения макета не подходит ни к одному случаю.
102 Dyspho
 
16.03.16
10:48
А какой подходит мне?
103 Dotoshin
 
16.03.16
10:49
Попробуй вместо Макет.Показать() написать Возврат Макет;
Вместо  ПолучитьМакетНаСервере(); написать  ПолучитьМакетНаСервере().Показать();
104 Остап Сулейманович
 
16.03.16
10:49
+(100) Код в твоем случае должен выглядеть примерно так

&НаКлиенте
Процедура ДвойнаяСОТ(Команда)
   Таб = Новый ТабличныйДокумент
   ЗаполнитьДвойнаяСОТНаСервере(Таб);
   Таб.Показать();
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьДвойнаяСОТНаСервере(Таб)
   Макет = ПолучитьОбщийМакет("ДвойнаяСОТ"); //Вот тут нужно правильно показать откуда брать макет
   Таб.Вывести(Макет);
КонецПроцедуры
105 Gunner
 
16.03.16
10:51
&НаКлиенте
Процедура ДвойнаяСОТ(Команда)
     Макет = ПолучитьМакетНаСервере();
     Макет.Показать();
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьМакетНаСервере()
    Макет = ПолучитьОбщийМакет("ДвойнаяСОТ");
КонецФункции
106 Dyspho
 
16.03.16
10:53
(105) {Документ.СтрокаОтчетаСотрудника.Форма.ФормаСпискаУправляемая.Форма(30)}: Значение не является значением объектного типа (Показать)
     Макет.Показать();
107 Остап Сулейманович
 
16.03.16
10:54
(102) Если макет нужен из ветки "общие" -
Макет = ПолучитьОбщийМакет("ДвойнаяСОТ");
Но имя макета должно быть точно такое "ДвойнаяСОТ".

Если в ветке Документы-СтрокаОтчетаСотрудника-макеты тогда
Макет = Документ.СтрокаОтчетаСотрудника.ПолучитьМакет("ДвойнаяСОТ");
108 Dyspho
 
16.03.16
10:54
(104) Во, спасибо большое)
109 Остап Сулейманович
 
16.03.16
10:55
(108) Ты ... это... книжки начни читать.
110 Записьдампа
 
16.03.16
10:56
Помнится народ ради прикола писал бота для сортировки массива. Бот ходил на stackoverflow, парсил оттуда примеры и пытался запустить.
Вот тот бот, кажется был круче ТС
111 Dyspho
 
16.03.16
11:00
(108) Нет, не подходит, он открывается как макет, а должен как печатная форма
жесть
112 hhhh
 
16.03.16
11:00
(109) бесполезно это
113 hhhh
 
16.03.16
11:01
(111) как ты это определил? В углу что ли написано "макет"?
114 Gunner
 
16.03.16
11:01
(106) странно, все верно
115 Dyspho
 
16.03.16
11:01
Ладно, дальше сам разберусь, спасибо
116 Fish
 
16.03.16
11:03
(114) У тебя там ошибка. Функция ничего не возвращает.
117 Dotoshin
 
16.03.16
11:04
(111) Как ты макет нарисовал, так он у тебя и открывается.
118 Gunner
 
16.03.16
11:04
(116) блин, я не дописал)))))))))А он тупо скопировал))))))
119 SadrArt
 
16.03.16
11:04
(111) > как печатная форма
C заполнением параметров? ... действительно - жесть.
120 Gunner
 
16.03.16
11:05
(105)
&НаКлиенте
Процедура ДвойнаяСОТ(Команда)
     Макет = ПолучитьМакетНаСервере();
     Макет.Показать();
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьМакетНаСервере()
    Возврат ПолучитьОбщийМакет("ДвойнаяСОТ");
КонецФункции
121 Dyspho
 
16.03.16
11:06
(119) Нет, по нажатии на кнопку открывается в виде макета, т.е. с полями (колонки,строчки) А надо чистый лист таблица
122 Gunner
 
16.03.16
11:07
(121) ну это он сам может прописать, чтобы не отображалась сетка и т.д, надеюсь :)
123 SadrArt
 
16.03.16
11:07
(121) Почитай про свойства и методы табличного документа.
124 Fish
 
16.03.16
11:08
(121) ТабличныйДокумент (SpreadsheetDocument)
ОтображатьЗаголовки (ShowHeaders)
Использование:

Чтение и запись.
Описание:

Тип: Булево.
Содержит признак отображения заголовков колонок и строк таблицы. Заголовки содержат номера колонок и строк и выводятся сверху и слева от таблицы.
Истина - отображается.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).

ТабличныйДокумент (SpreadsheetDocument)
ОтображатьСетку (ShowGrid)
Использование:

Чтение и запись.
Описание:

Тип: Булево.
Содержит признак отображения сетки таблицы.
Истина - отображается.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).
125 DDwe
 
16.03.16
11:09
(122) Не сможет.
126 hhhh
 
16.03.16
11:10
(121) вот товарищ из (30) это сделал, скопируй у него, только не всё копируй.
127 Gunner
 
16.03.16
11:10
(125) значит пусть книги читает и синтаксис-помощинк
128 Dyspho
 
16.03.16
11:10
(126) ДА я понял, всё равно некорректно выводится, пол макета не влезло
129 Остап Сулейманович
 
16.03.16
11:12
(121) Звиздетц. Окончательный и бесповоротный.
Было так
   Таб = Новый ТабличныйДокумент
   ЗаполнитьДвойнаяСОТНаСервере(Таб);
   Таб.Показать();

Должно стать так
   Таб = Новый ТабличныйДокумент
   ЗаполнитьДвойнаяСОТНаСервере(Таб);
   //Вниматель смотрим строки после комметария
   Таб.ОтображатьСетку = Ложь;
   Таб.ОтображатьЗаголовки = Ложь;
   //... Здесь должны идти остальные настройки отображения
   //Все хотелки есть только у тебя в голове. Больше ни у кого
   //Реализуй их плиз самостоятельно
   //Удачи
   Таб.Показать();
130 Dyspho
 
16.03.16
11:13
(129) Я говорю я сделал это, суть в том, что он на 4 А4 листа мне распечатыввает это
131 Fish
 
16.03.16
11:13
(130) СП хотя бы раз открой.
132 Остап Сулейманович
 
16.03.16
11:15
(130)
Таб.РазмерСтраницы = "A4"; // буква А - латинская
Таб.Автомасштаб = Истина; //Тогда оно все будет масштабировать под твою личную ширину листа.
133 Остап Сулейманович
 
16.03.16
11:16
Нет ли возможности блокировать некоторым возможность создавать темы? Хотя бы на время достаточное для прочтения СП. Хотя бы по одному разделу.
134 DDwe
 
16.03.16
11:20
(133) Он больше месяца мусолит эту тему, всё выбивает, чтобы ему готовый код дали. И читать не умеет.
135 Dotoshin
 
16.03.16
11:25
(134) Да не, думаю все проще, ему просто лень читать и думать. С возрастом это пройдет, наберется жизненного опыта, поймет, что книжки все же читать нужно, научится осмысливать прочитанное ну в общем вы поняли...
136 Gunner
 
16.03.16
11:28
(135) а если ему далеко за 20, а может даже и за 30?
137 Dyspho
 
16.03.16
11:28
(135) 1ый, кто какашками не закидал
138 Dyspho
 
16.03.16
11:28
(136) Мне 47
139 Dotoshin
 
16.03.16
11:30
(136) В личке написано 22...
140 DDwe
 
16.03.16
11:30
(138) Ну вот, опять врешь.
141 Dyspho
 
16.03.16
11:30
(140) Ну в личке же написано сколько мне
142 Dyspho
 
16.03.16
11:31
(140) Можешь через 10 дней с др поздравить меня?
143 DDwe
 
16.03.16
11:31
(142) Зачем? Кто ты такой?
144 Dyspho
 
16.03.16
11:32
(143) Сколько вопросов ответом на вопрос :)
145 Dotoshin
 
16.03.16
11:35
(141) Ты это, сходи поучись куда-нить пока не поздно, тебе явно профильного образования не хватает, заодно книжки научат читать и самое главное понимать че там написано...
146 Dyspho
 
16.03.16
11:35
Ладно, всем спасибо !
147 Сильф
 
16.03.16
11:55
*facepalm.jpg*
148 singlych
 
16.03.16
12:03
Щас еще окажется, что ему этот макет нужно выводить в бспшной форме ПечатьДокументов, готовьтесь.
149 Dyspho
 
16.03.16
12:12
Мне надо этот макет выводить в бспшной форме ПечатьДокументов, помогите.
150 Gunner
 
16.03.16
13:18
(149) ахахааха
151 Fish
 
16.03.16
13:19
(149) Версия БСП какая?
152 Dyspho
 
16.03.16
13:21
(151) Это не всерьёз
153 Fish
 
16.03.16
13:31
(152) Да и я тоже пошутил :)
154 Dyspho
 
16.03.16
13:33
(153) А, ну тогда 2.3
155 Сильф
 
16.03.16
18:19
А между тем, сегодня данной задаче исполнился месяц: Печатная форма из обычных в управляемые формы
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн