Форум программистов, компьютерный форум, киберфорум
Наши страницы
1С: Собственные программы
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.96/26: Рейтинг темы: голосов - 26, средняя оценка - 4.96
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
1

Создать программно табличную часть в форме документа как приставлено на последем скрине

10.05.2016, 14:42. Просмотров 5409. Ответов 53
Метки нет (Все метки)

Народ помогите мне пожалуйста создать программно табличную часть в форме документа как приставлено на последем скрине
немогу нечего нормального найти
0
Миниатюры
Создать программно табличную часть в форме документа как приставлено на последем скрине  
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2016, 14:42
Ответы с готовыми решениями:

Создание документа: как заполнить табличную часть?
Документ без заполнения табличной части я создавать научился. А вот как заполнять таблицу - не...

Табличная Часть Документа В Табличную Часть Другого Документа.
Есть документ "служебная записка" с ТЧ товары...нужно при заполнении нового документа "заказ" в ТЧ...

Как заполнить табличную часть формы программно
В обработках есть форма на которой находится поле ввода и кнопка для поиска. Нужно сделать так, что...

Как добавить табличную часть документа в условие отбора?
Всем доброго времени суток! Как добавить табличную часть документа в условие отбора? Есть один...

Как заполнить табличную часть документа через контекст?
Привет! Делаю новый документ, заполняю через контекст шапку, пытаюсь заполнить таблицу: ...

53
GreenkA
Форумчанин
Эксперт 1С
3003 / 1923 / 520
Регистрация: 25.06.2009
Сообщений: 6,817
10.05.2016, 14:50 2
Лучший ответ Сообщение было отмечено 123Roman123 как решение

Решение

123Roman123, а откуда у вас скрин?
1
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 14:52  [ТС] 3
мне 2 таблицы нужно добавить в текущую форму, так как этот документ созда на основание другога и теперь над программно добавить 2 таблицы
0
GreenkA
Форумчанин
Эксперт 1С
3003 / 1923 / 520
Регистрация: 25.06.2009
Сообщений: 6,817
10.05.2016, 15:14 4
Лучший ответ Сообщение было отмечено 123Roman123 как решение

Решение

123Roman123, думаю первую таблицу можно и не программно создавать, а сразу забить колонки в конфигураторе. Они же фиксированные?
По второй таблице: числа - это даты? Тогда да Как вариант создать на форме таблицу значений - "Таблица", без колонок. И далее примерный код:
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
&НаСервере
Процедура СоздатьКолонкиТаблицы()
    КЧ = Новый КвалификаторыЧисла(12,2);
    КС = Новый КвалификаторыСтроки(20);
    Массив = Новый Массив;
    Массив.Добавить(Тип("Строка"));
    ОписаниеТиповС = Новый ОписаниеТипов(Массив, , КС);
    Массив.Очистить();
    Массив.Добавить(Тип("Число"));
    ОписаниеТиповЧ = Новый ОписаниеТипов(Массив, , ,КЧ);
    МассивРеквизитов = Новый Массив;    
    МассивРеквизитов.Добавить(Новый РеквизитФормы("НомерПП", ОписаниеТиповЧ,"Таблица", "№"));
    МассивРеквизитов.Добавить(Новый РеквизитФормы("ФИОСтудента", ОписаниеТиповС,"Таблица", "ФИО студента"));
 
    ПоследняяКолонка = День(КонецМесяца(ТекущаяДата())); //здесь задаем количество колонок
    Для к = 1 по ПоследняяКолонка Цикл
        МассивРеквизитов.Добавить(Новый РеквизитФормы("Колонка" + Строка(к), ОписаниеТиповЧ, "Таблица", к));        
    КонецЦикла;
    МассивРеквизитов.Добавить(Новый РеквизитФормы("Итог", ОписаниеТиповЧ, "Таблица", "Итог"));
 
    ЭтаФорма.ИзменитьРеквизиты(МассивРеквизитов);      
    
    //
    Для к = 0 по МассивРеквизитов.Количество()-1 Цикл
        НоваяКолонка = ЭтаФорма.Элементы.Добавить("Таблица" + МассивРеквизитов[к].Имя, Тип("ПолеФормы"), ЭтаФорма.Элементы.Таблица); 
        НоваяКолонка.Заголовок = МассивРеквизитов[к].Заголовок; 
        НоваяКолонка.ПутьКДанным = "Таблица" + "." + МассивРеквизитов[к].Имя;
        НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода; 
        НоваяКолонка.РежимРедактирования = РежимРедактированияКолонки.ВходПриВводе;
        Если к = 0 или к = 1 Тогда
            НоваяКолонка.ФиксацияВТаблице = ФиксацияВТаблице.Лево;
        ИначеЕсли к = МассивРеквизитов.Количество()-1 Тогда
            НоваяКолонка.ФиксацияВТаблице = ФиксацияВТаблице.Право;
        КонецЕсли;
    КонецЦикла; 
    
    //здесь дальше можем загружать список студентов и заполнять первые две колонки Таблицы
    //...
КонецПроцедуры
Только если это документы, то как вы будете сохранять данные заполнения этих программно созданных таблиц?

Добавлено через 3 минуты
123Roman123, лучше создайте две Табличные части документа (в Конфигураторе), для каждой создайте нужные реквизиты(колонки). Для второй таблицы можно задать максимум колонок - 31(я так и не поняла, это даты?),
А уже при открытии документа в зависимости от его даты лишние колонки скрывать(убирать видимость программно).
1
10.05.2016, 15:14
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 15:53  [ТС] 5
это номера занятий они будут разные от количество занятий зависть
Всем спс будем разбираться

Добавлено через 14 минут
Тогда если 1 таблицу делать как реквизит то как брать данные в нее из другой таблицы?
0
GreenkA
Форумчанин
Эксперт 1С
3003 / 1923 / 520
Регистрация: 25.06.2009
Сообщений: 6,817
10.05.2016, 16:13 6
Лучший ответ Сообщение было отмечено 123Roman123 как решение

Решение

Цитата Сообщение от 123Roman123 Посмотреть сообщение
Тогда если 1 таблицу делать как реквизит то как брать данные в нее из другой таблицы?
Опишите подробнее вашу задачу.
1
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 16:23  [ТС] 7
мне надо сделать как на скрине чтобы данные брались ко 2 таблице из свернутой 1 первой ?
и потом уже из 1 таблицы подставить колонки равный количеству занятий +2 колонки как на втором скрине
0
Миниатюры
Создать программно табличную часть в форме документа как приставлено на последем скрине   Создать программно табличную часть в форме документа как приставлено на последем скрине  
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 16:25  [ТС] 8
И еще как делать разворачивать и сворачивать таблицы ?

Добавлено через 1 минуту
На насчет заполнения таблиц
1 таблица заполняется данными из свернутой таблицы, а 2 таблицы в ручную эт типо страница журнала
0
GreenkA
Форумчанин
Эксперт 1С
3003 / 1923 / 520
Регистрация: 25.06.2009
Сообщений: 6,817
10.05.2016, 17:25 9
Лучший ответ Сообщение было отмечено 123Roman123 как решение

Решение

Цитата Сообщение от 123Roman123 Посмотреть сообщение
2 таблицы в ручную эт типо страница журнала
значит числа в колонках - это даты, а не часы.

Добавлено через 49 секунд
В итоге у вас получается три таблицы: Календарно-тематический план, Журнал тем урока и Журнал оценок.

Добавлено через 1 минуту
Цитата Сообщение от 123Roman123 Посмотреть сообщение
как делать разворачивать и сворачивать таблицы
я думаю, там просто выставляется видимость элементов формы.

Добавлено через 26 секунд
123Roman123, у вас есть только скрины или сама конфигурация тоже имеется?

Добавлено через 1 минуту
по поводу связи таблиц: надо смотреть, как отрабатывает механизм. На мой взгляд нет необходимости связывать первую(Календарно-тематический план) и вторую таблицы(Журнал тем урока). Связаны должны быть именно вторая и третья(Журнал оценок). Связывать таблицы можно по ключу: например в Журнал оценок добавить скрытую колонку со значением "Темы урока", при активизации строки таблицы "Журнал тем урока" делать отбор в "Журнале оценок" по ключу.
1
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 17:31  [ТС] 10
ну да да есть конфигурация вот скинул и скинул как должна получить прога помоги плиз
0
Вложения
Тип файла: rar 1Cv8.rar (45.9 Кб, 8 просмотров)
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 17:34  [ТС] 11
Вот документ
0
Вложения
Тип файла: rar article_1243.rar (1.37 Мб, 6 просмотров)
GreenkA
Форумчанин
Эксперт 1С
3003 / 1923 / 520
Регистрация: 25.06.2009
Сообщений: 6,817
10.05.2016, 17:44 12
Лучший ответ Сообщение было отмечено 123Roman123 как решение

Решение

Цитата Сообщение от 123Roman123 Посмотреть сообщение
да есть конфигурация
а в чем проблема сделать по аналогии?
1
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 17:46  [ТС] 13
застрял на последнем этапе как сделать таблицу програмно чтобы и выбор данных из 1 таблицы во второю
а так у меня нет готов ток скрины вот и мучаюсь делать
помогите пожалуйста
0
GreenkA
Форумчанин
Эксперт 1С
3003 / 1923 / 520
Регистрация: 25.06.2009
Сообщений: 6,817
10.05.2016, 17:48 14
Лучший ответ Сообщение было отмечено 123Roman123 как решение

Решение

123Roman123, архив с базой не открывается, а задание в таком объеме я читать не буду. Описать подробнее задачу - не значит скинуть 16 страниц в ворде...

Добавлено через 2 минуты

Не по теме:

123Roman123, заархивировать - это по вашему сменить вручную расширение файла с *.dt на *.rar?:rofl:

1
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 17:49  [ТС] 15
нет мне 2 последних скрина помогите и все
чтоб колонки были равны количеству занятий в 1 таблице
базу обновил и скинул
0
Вложения
Тип файла: zip 1Cv8.zip (46.0 Кб, 3 просмотров)
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 19:32  [ТС] 16
чет не как не поддоеться в создание таблицы

Добавлено через 12 минут
вот дали этот код и куда я так не понял ег прописывать?
0
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 19:37  [ТС] 17
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
&НаСервере
Процедура СоздатьКолонкиТаблицы()
    КЧ = Новый КвалификаторыЧисла(12,2);
    КС = Новый КвалификаторыСтроки(20);
    Массив = Новый Массив;
    Массив.Добавить(Тип("Строка"));
    ОписаниеТиповС = Новый ОписаниеТипов(Массив, , КС);
    Массив.Очистить();
    Массив.Добавить(Тип("Число"));
    ОписаниеТиповЧ = Новый ОписаниеТипов(Массив, , ,КЧ);
    МассивРеквизитов = Новый Массив;    
    МассивРеквизитов.Добавить(Новый РеквизитФормы("НомерПП", ОписаниеТиповЧ,"Таблица", "№"));
    МассивРеквизитов.Добавить(Новый РеквизитФормы("ФИОСтудента", ОписаниеТиповС,"Таблица", "ФИО студента"));
 
    ПоследняяКолонка = День(КонецМесяца(ТекущаяДата())); //здесь задаем количество колонок
    Для к = 1 по ПоследняяКолонка Цикл
        МассивРеквизитов.Добавить(Новый РеквизитФормы("Колонка" + Строка(к), ОписаниеТиповЧ, "Таблица", к));        
    КонецЦикла;
    МассивРеквизитов.Добавить(Новый РеквизитФормы("Итог", ОписаниеТиповЧ, "Таблица", "Итог"));
 
    ЭтаФорма.ИзменитьРеквизиты(МассивРеквизитов);      
    
    //
    Для к = 0 по МассивРеквизитов.Количество()-1 Цикл
        НоваяКолонка = ЭтаФорма.Элементы.Добавить("Таблица" + МассивРеквизитов[к].Имя, Тип("ПолеФормы"), ЭтаФорма.Элементы.Таблица); 
        НоваяКолонка.Заголовок = МассивРеквизитов[к].Заголовок; 
        НоваяКолонка.ПутьКДанным = "Таблица" + "." + МассивРеквизитов[к].Имя;
        НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода; 
        НоваяКолонка.РежимРедактирования = РежимРедактированияКолонки.ВходПриВводе;
        Если к = 0 или к = 1 Тогда
            НоваяКолонка.ФиксацияВТаблице = ФиксацияВТаблице.Лево;
        ИначеЕсли к = МассивРеквизитов.Количество()-1 Тогда
            НоваяКолонка.ФиксацияВТаблице = ФиксацияВТаблице.Право;
        КонецЕсли;
    КонецЦикла; 
    
  КонецПроцедуры
Обьясните куда этот код вставлять для создания таблицы?
Самая нижния таблица?
0
Миниатюры
Создать программно табличную часть в форме документа как приставлено на последем скрине  
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
10.05.2016, 19:41  [ТС] 18
Народ помогите или найти плиз норм ссылку где рассказываться как свернут и развернуть табличную часть документа по нажатию кнопки?
0
GreenkA
10.05.2016, 20:31
  #19

Не по теме:

123Roman123, ни к чему плодить темы. Я так понимаю, вам мои наводки выше ничего не дали и нужен конкретный код? Для его написания нужно изучить-таки те 16 страниц выложенного вами ТЗ... Когда у меня появится время - посмотрю, чем могу помочь.

0
123Roman123
0 / 0 / 1
Регистрация: 27.04.2014
Сообщений: 59
11.05.2016, 00:00  [ТС] 20
нет именно 12-14 страницы все остально я сделаю вт это не получаеться и я кидал конфигурацию там все сделано

Добавлено через 25 минут
Узнать куда этот код вставить и нарисовать таблицу и почти все сделано

Добавлено через 3 часа 0 минут
Версия 8,2
0
11.05.2016, 00:00
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2016, 00:00

Как выгрузить данные из таблицы значений в табличную часть документа?
Как можно выгрузить данные из таблицы значений в табличную часть документа? Есть какая-нибудь ф-я...

Как добавить в массив табличную часть выделенного из списка документа
Добрый день. Не когда не занимался программирование 1с. Приходиться изучать. Подскажите как...

Как перебрать с отбором табличную часть документа в модуле формы?
Есть документ. В нем табличная часть. Есть колонка номенклатура, кол-во, остаток. остаток...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.