0. Jen1978 13 15.05.19 11:30 Сейчас в теме

Конфигурация для программистов для повседневного использования

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

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. user635667 51 15.05.19 11:51 Сейчас в теме
А Вкладка Алгоритмы тоже идет в комплекте со всем содержимым? я бы поизучал чего там у вас)
6. Jen1978 13 15.05.19 13:28 Сейчас в теме
(1) к примеру вот такой код для вставки в модуль внешнего отчета
Функция СведенияОВнешнейОбработке() Экспорт 
    
    ИмяОтчета = ЭтотОбъект.Метаданные().Имя; 
    Синоним = ЭтотОбъект.Метаданные().Синоним + " " + ЭтотОбъект.Метаданные().Комментарий; 
    Синоним = ?(ЗначениеЗаполнено(Синоним),Синоним, ИмяОтчета); 
    РегистрационныеДанные = Новый Структура();
    РегистрационныеДанные.Вставить("Вид", "ДополнительнаяОбработка");
    РегистрационныеДанные.Вставить("Наименование", Синоним);
    РегистрационныеДанные.Вставить("Версия", "1.0");
    РегистрационныеДанные.Вставить("БезопасныйРежим", Ложь);
    РегистрационныеДанные.Вставить("Информация", "Обработка "+Синоним);
        
    ТаблицаКоманд = ПолучитьТаблицуКоманд();

    // Добавим команду в таблицу
    ДобавитьКоманду(ТаблицаКоманд, Синоним, "1" , "ОткрытиеФормы", Истина, );
        
       // Сохраним таблицу команд в параметры регистрации обработки
    РегистрационныеДанные.Вставить("Команды", ТаблицаКоманд);

    Возврат РегистрационныеДанные;

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

Функция ПолучитьТаблицуКоманд()
    
    // Создадим пустую таблицу команд и колонки в ней
    Команды = Новый ТаблицаЗначений;

    // Как будет выглядеть описание печатной формы для пользователя
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); 

    // Имя нашего макета, что бы могли отличить вызванную команду в обработке печати
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));

    // Тут задается, как должна вызваться команда обработки
    // Возможные варианты:
    // - ОткрытиеФормы - в этом случае в колонке идентификатор должно быть указано имя формы, которое должна будет открыть система
    // - ВызовКлиентскогоМетода - вызвать клиентскую экспортную процедуру из модуля формы обработки
    // - ВызовСерверногоМетода - вызвать серверную экспортную процедуру из модуля объекта обработки
    Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));

    // Следующий параметр указывает, необходимо ли показывать оповещение при начале и завершению работы обработки. Не имеет смысла при открытии формы
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));

    // Для печатной формы должен содержать строку ПечатьMXL 
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
    Возврат Команды;
   
КонецФункции

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование = "ОткрытиеФормы", ПоказыватьОповещение = Ложь, Модификатор)
    
    // Добавляем команду в таблицу команд по переданному описанию.
    // Параметры и их значения можно посмотреть в функции ПолучитьТаблицуКоманд
    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;

КонецПроцедуры
Показать
7. ltfriend 304 15.05.19 22:49 Сейчас в теме
(6) Выскажусь не по теме.
Весь этот код можно заменить одной процедурой:
Функция СведенияОВнешнейОбработке() Экспорт
	
	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();
	ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
	ПараметрыРегистрации.Версия = "1.0";
	ПараметрыРегистрации.Наименование = НСтр("ru='ТОРГ-12 (Новая)'");
	ПараметрыРегистрации.Информация = НСтр("ru='Новая форма ТОРГ-12'");
	                                                                         
	Команда = ПараметрыРегистрации.Команды.Добавить();
	Команда.Идентификатор = "ТОРГ12Новая";
	Команда.Представление = НСтр("ru='ТОРГ-12 (Новая)'");
	Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
	Команда.Модификатор = "ПечатьMXL";
	
	Возврат ПараметрыРегистрации;
	
КонецФункции
Показать


А вообще, я себе такую обработку сделал
2. Jen1978 13 15.05.19 11:54 Сейчас в теме
тут только конфигурация. Базу не приложил
3. Jen1978 13 15.05.19 11:55 Сейчас в теме
я думаю у каждого свои инструменты
4. tigrandis 130 15.05.19 12:01 Сейчас в теме
А код подсвечивается ??? Имею ввиду встроенный язык 1С ?
5. Jen1978 13 15.05.19 13:15 Сейчас в теме
Нет. Обычное текстовое поле. Оно для хранения Ваших алгоритмов а не для написания
8. JohnConnor 33 16.05.19 05:29 Сейчас в теме
каждое решение имеет право на жизнь, но зачем если уже давно есть удобный gist на гитхабе позволяющий делать как приватный так и публичные записи, а тот же bitbacet вообще позволяет очень удобно хранить обработки и есть приложения позволяющие с ними работать типа lepton
9. Jen1978 13 16.05.19 08:17 Сейчас в теме
(8) Вам никто не прикрутит туда ваши рутины. Хранение версий обработок это одна из функций этой конфигурации. "удобный gist" не составит за Вас отчет о проделанной работе.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Программист 1С
Санкт-Петербург
зарплата до 120 000 руб.
Полный день

Работа от Инфостарт
Санкт-Петербург
Временный (на проект)

Программист 1С
Новосибирск
зарплата от 80 000 руб.
Полный день

Руководитель отдела внедрения 1С
Новосибирск
зарплата от 60 000 руб. до 160 000 руб.
Полный день