Архив рубрики: Без рубрики

Использование шаблонов Word в 1С

Использование шаблонов Word в 1С

В работе программиста 1С, данный функционал требуется крайне редко, хотя благодаря нему можно решать довольно сложные задачи с динамическими и не постоянными печатными формами. При реализации данной задачи, работа по созданию шаблонов Word и расстановке закладок в шаблоне Word возлагается на пользователей 1C.

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

Создадим шаблон на основе документа Word для 1С. Сначала необходимо включить показ закладок для более удобной работы с документом:

Использование шаблонов Word в 1С

Использование шаблонов Word в 1С


Использование шаблонов Word  в 1С

Использование шаблонов Word в 1С

Далее необходимо в файл шаблона для 1С, добавить текст и пару закладок. Закладка добавляется через меню «Вставка» — «Закладка». Нужно выделить текст закладки, скопировать его, открыть меню «Вставка — Закладка», вставить скопированный текст закладки и нажать «Добавить»:

Установка закладки, шаблон Word для 1С

Установка закладки, шаблон Word для 1С


Когда файл шаблона Word готов, создаем новую внешнею обработку в 1С, добавляем форму и в модуле формы вставляем следующий код:

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	
	ЗаполнитьШаблонВорд();
	
КонецПроцедуры

&НаКлиенте
Функция ЗаполнитьШаблонВорд()

	//Попытка создать COM объект
	Попытка
		ОбъектВорд = Новый COMОбъект("Word.Application"); 
	Исключение
		Сообщить("Ошибка при запуске Microsoft Word: " + ОписаниеОшибки(), СтатусСообщения.Внимание);
		Возврат Неопределено;
	КонецПопытки;
	
	//Путь к шаблону
	ОбъектВорд.Documents.Add("C:\Users\Константин\Desktop\Шаблон.docx");
	ШаблонВорд = ОбъектВорд.ActiveDocument;
	
	//Получаем все закладки из шаблона
	Для каждого ЗакладкаВорд Из ШаблонВорд.Bookmarks Цикл
		Сообщить(ЗакладкаВорд.Name);		
	КонецЦикла;
	
	//Заменяем закладку1 на текст
	ШаблонВорд.Bookmarks("Закладка1").Select();
	ШаблонВорд.Application.Selection.TypeText("Текст для закладки №1.");
	
	//Заменяем закладку2 на текст
	ШаблонВорд.Bookmarks("Закладка2").Select();
	ШаблонВорд.Application.Selection.TypeText("Текст для закладки №2.");
	
	//Заменяем закладку3 на текущую дату
	ШаблонВорд.Bookmarks("Закладка3").Select();
	ШаблонВорд.Application.Selection.TypeText(ТекущаяДата());
	
	ОбъектВорд.Application.Visible = Истина;
	ОбъектВорд.Activate();
	
	//Закрытие документа
	//ОбъектВорд.Application.Quit();
	
КонецФункции

В результат запуска внешней обработки 1С по формированию печатной формы на основе шаблона в виде файла Word, мы получим следующий результат:

Результат использования шаблонов Word в 1С

Результат использования шаблонов Word в 1С

Информацию по методам COM объекта Word, а так же дополнительные данные можно узнать из MSDN.

Скачать файл обработки 1С и шаблона Word.

1С ERP Генерация штрих кода типовыми средствами

1С ERP Генерация штрих кода типовыми средствами

В программе 1С ERP имеется типовая возможность создавать штрихкоды и выводить их на печать без использования дополнительных средств, пример кода:

//...
ПараметрыШтрихкода = Новый Структура;
ПараметрыШтрихкода.Вставить("Ширина",          100);
ПараметрыШтрихкода.Вставить("Высота",          75);
ПараметрыШтрихкода.Вставить("Штрихкод",        СокрЛП(СтрокаТЗ.Штрихкод));
ПараметрыШтрихкода.Вставить("ТипКода",         1); // EAN13
ПараметрыШтрихкода.Вставить("ОтображатьТекст", Истина);
ПараметрыШтрихкода.Вставить("РазмерШрифта",    12);
					
ОбластьШтрихкод = Макет.ПолучитьОбласть("Штрихкод");
ОбластьШтрихкод.Рисунки.ШК.Картинка = МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода(ПараметрыШтрихкода);
ТабДок.Вывести(ОбластьШтрихкод);
//...

1С Как обновить форму документа в тонком клиенте

1С Как обновить форму документа в тонком клиенте

Небольшая подсказка для начинающих программистов 1С. Если вы создали внешнюю обработку для заполнения табличной части документа на основе управляемых форм и теперь хотите обновить отображение данных документа, можете воспользоваться следующим способом:

&НаКлиенте
Процедура Заполнить(Команда)
	
	//Код по изменению и сохранению данных документа в базе данных
	//...
	
	ФормаВладелец = ЭтаФорма.ВладелецФормы;
	ФормаВладелец.Прочитать();
	
КонецПроцедуры

Данный код выполняется в форме обработке по заполнению табличной части.

Старые концепты — Old concepts of weapons

Старые концепты, которые вряд ли, когда либо, будут воплощены в жизнь.

Spider — zbrush speed sculpting

Паучок сделанный за вечер, по старому рисунку, по-моему получилось довольно мило 🙂

Простая сцена в UDK / Simple UDK Scene

Пока есть время и возможность, изучаю игровой движок Unreal, разработка игр в котором ведется при помощи программного комплекса под названием UDK (Unreal Developer’s Kit), для более подробного изучения решил создать небольшую сцену с фонтаном. Фонтан будет представлять из себя ангела с кувшином, из которого будет литься вода. Примерный набросок фигуры можно видеть на рисунке, в данный момент объект готов частично:

Набросок и первичная модель ангела

Набросок и первичная модель ангела


В ходе моделирования были внесены изменения в положение фигуры, то как она держит кувшин и форму крыльев. Вокруг фигуры ангела буду скамейки, кусты, позади деревья и дабы не создавать лишние объекты, горизонт будет закрыть каменной оградой, предполагаемую схему можно увидеть ниже на рисунке:
План сцены

План сцены


Изначально, базовые низкополигональные модели были созданы в Blender и Makehuman, одежда была создана при помощи симуляции. Далее было решение делать скульптинг в Blender, но как выяснилось на опыте, он не может стабильно работать с большим количеством полигонов, при превышении порога в 1,5 миллиона, он просто завершался. На помощь пришел ZBrush, который с успехом справляется и с более большим количеством полигонов.

Обновление (30.05.2013): Модель ангела для фонтана, тестовый рендер в ZBrush.

Обновление (05.06.2013): Сделано основание фонтана, добавлены детали, такие как трещины, сколы, царапины. Так же добавлены текстуры и материалы. Дальнейший шаг, ретопология высоко-полигональной модели(около 3 миллионов полигонов), в программе TopoGun.

Обновление (20.06.2013): Наконец то сделана, низко полигональная модель, которая будет использоваться в игровом движке, в итоге получилось 11 тысяч полигонов. Как было сказано выше, ретопологию хотел сделать в программе TopoGun, но в ней есть одна особенность, которая мне очень мешала, объект ретопологии просвечивал и были видны полигоны на обратной стороне, что сильно сбивало с толку, может эту функцию можно было отключить, к сожалению, так и не нашел как это сделать. Зато в TopoGun, очень удобно генерировать карты нормалей и текстуры, что как раз будет сделано именно в ней. Ретопология же производилась в программе Blender , при помощи модификатора Shrinkwrap, дополнения Bsurfaces и включенной опции Snap.

Обновление (21.06.2013): Сегодня были созданы карты нормалей и текстуры объектов, с помощью программы TopoGun. Так же, создан тестовый рендер в программе Marmoset Toolbag.

Обновление (01.07.2013): Тестовый рендер модели в UDK, смотрится вроде бы не плохо.

Обновление (03.07.2013): Вот и готова простая сцена в UDK, к сожалению реализовать все задуманное не получилось, так как, мой компьютер просто не способен на большее, как играть в сапера, чуть не туда нажал и все, конец.
Видео (смотрите в HD):

Скриншоты:

Еще немного зарисовок

Character: Robo

Небольшой набросок персонажа Robo, потрепанный с искренними глазами робот. На лице повязка, скрывающая удаленный голосовой модуль. На голове старый цилиндр, помятый и местами порванный. Штаны старые, в заплатках и местами не аккуратно штопанные, на теле множество масленых потеков, царапин, заплаток, при движении местами появляются искры. На одной ноге старый, рваный ботинок, другая частично повреждена. Шея и руки удлиненные, телескопические и гибкие. Ремень представляет из себя простую веревку(бечевку) или сплетенные провода.

Зарисовка персонажа:
character Robo-sketch

Первый этап моделирования:
character-robo
Добавлено немного деталей:
character-robo-2
Смоделированы еще детали персонажа, следующий этап скульптинг:
character-robo-3
08.04.2013 Скульптинг в ZBrush, небольшая детализация:

Robo sculpt zbrush

Robo sculpt zbrush


12.04.2013 Результат:
Персонаж: Robo - (Blender, ZBrush, Photoshop)

Персонаж: Robo


Персонаж: Robo - (Blender, ZBrush, Photoshop)

Персонаж: Robo

Учусь рисовать дальше, в основном каракули.

От простого к сложному.

Бетти Эдвардс: «Открой в себе художника» — Результаты и итоги.

Бетти Эдвардс: «Открой в себе художника» - Результаты и итоги.
Всю свою жизнь, я всегда мечтал научиться рисовать и завидовал тем людям, которые могли просто взять карандаш и изобразить на бумаге, что-то прекрасное, необычное или же просто объект из повседневной суеты. Теперь же, я понимаю, что научится раз и навсегда рисовать не возможно, это процесс длиною в жизнь. Оглядываясь назад и оценивая рисунки «до» и «после», то прогресс заметен, только все равно, еще не так хорошо, как хотелось бы. Критическое отношение осталось и это правильно, так как всегда нужно стремиться к совершенству, хотя оно и ни когда не будет достигнуто, в этом то и вся прелесть рисования.

Моя рука, до и после. Нео, Матрица, до и после. Автопортрет, до и после.
Если вы задумываетесь, покупать данную книгу или нет, мой вам совет, покупайте, только не ждите от этой книги большого чуда, художником невозможно стать, прочитав только эту книгу и выполнив все задания описанные в ней. Но эта книга, поможет вам поверить в свои силы, что иногда бывает намного важней. Вы научитесь видеть, не просто объект, а уже его конкретные детали, сможете сформировать образ и перенести его на бумагу. Данная книга лишь начало, лишь первый небольшой шажок, сделанный вами.

Пример работ Пример работ Пример работ
На многих ресурсах в сети интернет, встречается большое количество нелестных и негативных отзывов и комментариев к данной книге, хочу посоветовать, ни обращать внимание на это, так как, данные слова на первых порах, могут ввести вас в заблуждение. Хочу объяснить данный момент, дело в том, что большинство людей, которые пишут столь отрицательные отзывы, либо используют свои академические навыки рисования либо просто не поняли основную мысль, которую хотел донести автор. Что еще хуже, просмотрев первые страницы и прочитав про «Л» и «П» — режимы, приходят в недоумение и начинают «брызгать слюной», в этом случае все понятно, у людей случился когнитивный диссонанс, это и понятно, всю жизнь их учили одному, а тут какие-то режимы, полушарии мозга и «махинации» с переключениями. Автор дает правильные навыки рисования, контурное рисование, свет и тень, пропорции человека, негативное и позитивное пространство, с единственной разницей, в том что, упор делается на функционирование правого полушария головного мозга.

Пример работ Пример работ Пример работ
После этой книги, если вы захотите и дальше совершенствовать свои навыки рисования, то вам все равно придется прибегнуть к академическому и аналитическому рисованию, это очень полезная и важная информация, которая поможет вам рисовать еще лучше. Ведь ни что не мешает вам использовать приобретенные навыки в изучении новых методик, большинство материала будет усваиваться намного быстрее и лучше. Успехов в рисовании!

P.S. Хочу выразить благодарность, человеку под псевдонимом Fcl, за статью «Развитие правого полушария головного мозга или как я учился рисовать», без которой, я бы ни когда не узнал, о столь замечательной книге.