хуй

antipodarok


Антиподарок

аренда подъемников


1C Макеты ActiveDocument
хуй
antipodarok

Как сформировать новый договор на основании файла Microsoft Word?

Договор = ПолучитьМакет("Договор"); 

// Получить объект из макета.
MSWord = Договор.Получить();
НаименованиеКонтрагента = "ООО Торгуем всем"; 

Попытка
	Документ = MSWord.Application.Documents(1);
	Документ.Activate(); 

	// Получить объект, который будем использовать для поиска и замены.
	Замена = Документ.Content.Find; 

	// Заменить заранее определенные ключевые конструкции на требуемый текст.
	Замена.Execute("<НазваниеКомпании>", Ложь, Истина, Ложь, , ,
                           Истина, , Ложь, НаименованиеКонтрагента); 

	// Далее аналогично для остальных ключевых конструкций. 

	// Делаем видимым приложение и активизируем его.
	MSWord.Application.Visible = Истина;
	MSWord.Activate(); 

Исключение 

	// Если произойдет ошибка выводятся данные об ошибке и объект закрывается.
	Сообщить(ОписаниеОшибки());
	MSWord.Application.Quit(); 

КонецПопытки;
Tags: ,

1C ActiveX
хуй
antipodarok

Как использовать элементы управления ActiveX?

Режим = РежимДиалогаВыбораФайла.Открытие;
ДиалогФыбораФайла = Новый ДиалогВыбораФайла(Режим);
ДиалогФыбораФайла.Фильтр = "Все файлы (все)|*.*";
ДиалогФыбораФайла.Заголовок = "Выберите медиа файл"; 

Если ДиалогФыбораФайла.Выбрать() Тогда
	ПутьКМедиаФайлу = ДиалогФыбораФайла.ПолноеИмяФайла; 

	// В зависимости от варианта объекта запись полного пути к файлу
	// производится либо в свойство FileName, либо в свойство URL.
	Попытка
		ЭлементыФормы.WMP.FileName = ПутьКМедиаФайлу;
	Исключение
		ЭлементыФормы.WMP.URL = ПутьКМедиаФайлу;
	КонецПопытки;
КонецЕсли;
Tags: ,

1C Работа с файлами
хуй
antipodarok

Как организовать диалог выбора текстового файла?

Режим = РежимДиалогаВыбораФайла.Открытие;
ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим);
ДиалогОткрытияФайла.ПолноеИмяФайла = "";
Фильтр = "Текст(*,txt)|*.txt";
ДиалогОткрытияФайла.Фильтр = Фильтр;
ДиалогОткрытияФайла.МножественныйВыбор = Ложь;
ДиалогОткрытияФайла.Заголовок = "Выберите файл"; 

Если ДиалогОткрытияФайла.Выбрать() Тогда
	ПутьКФайлу = ДиалогОткрытияФайла.ПолноеИмяФайла;
КонецЕсли;

Режим = РежимДиалогаВыбораФайла.ВыборКаталога;
ДиалогОткрытия = Новый ДиалогВыбораФайла(Режим);
ДиалогОткрытия.Каталог = "";
ДиалогОткрытия.МножественныйВыбор = Ложь;
ДиалогОткрытия.Заголовок = "Выберите каталог"; 

Если ДиалогОткрытия.Выбрать() Тогда
	ПутьККаталогу = ДиалогОткрытия.Каталог;
КонецЕсли;

Как прочитать информацию о файле?

ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
ДиалогОткрытияФайла.Выбрать(); 

Файл = Новый Файл(ДиалогОткрытияФайла.ПолноеИмяФайла);
Текст = "Файл: " + Файл.Имя;
Текст = Текст + Символы.ПС + "Расширение: " + Файл.Расширение;
Текст = Текст + Символы.ПС + "Полное имя: " + Файл.ПолноеИмя;
Текст = Текст + Символы.ПС + "Путь: " + Файл.Путь;
Текст = Текст + Символы.ПС + "Размер: " + Файл.Размер() + " байт";
Текст = Текст + ?(Файл.ПолучитьНевидимость(), Символы.ПС + "Невидимый. ", "");
Текст = Текст + ?(Файл.ПолучитьТолькоЧтение(), Символы.ПС + "Только чтение.", "");
Текст = Текст + Символы.ПС + "Последнее изменение: " + Файл.ПолучитьВремяИзменения(); 

Сообщить(Текст);

Как получить список файлов в указанном каталоге?

МассивНайденных = НайтиФайлы("C:\Обмен\Входящие", "*.xml"); 

Для Каждого Файл из МассивНайденных Цикл
	Сообщить(Файл.Имя); 

	// Обработать найденные файлы. 

КонецЦикла;

Как переместить файл, выложенный на ftp к себе на локальный компьютер?

Если НайтиФайлы("C:\Temp\Sklad.xml") <> Неопределено Тогда
	УдалитьФайлы("C:\Temp\ Sklad.xml ");
КонецЕсли; 

Если НайтиФайлы("ftp://111.222.333.4/Sklad.xml") <> Неопределено Тогда
	ПереместитьФайл("ftp://111.222.333.4/Sklad.xml", "C:\Temp\ Sklad.xml");
	Сообщить("Файл перемещен."); 

Иначе
	Сообщить("Действие не выполнено. Файл в источнике не найден.");
КонецЕсли;

Как разделить большой файл на несколько файлов определенного размера?

//Разделяем указанный файл на несколько частей заданного размера
РазделитьФайл("D:/1/MyFile.xml", 1024*1024, "D:/1/11/"); 

// Обратная операция - объединение нескольких файлов в один
ОбъединитьФайлы("D:/1/11/MyFile.xml.*", "D:/1/11/MyProg.exe");

Как поместить файлы в архив?

ФайлАрхива = Новый ЗаписьZipФайла("C:\Arch.zip", , ,
                  МетодСжатияZIP.Сжатие, УровеньСжатияZIP.Максимальный);
ФайлАрхива.Добавить("C:\Inetpub\wwwroot\Applic1\*.*",
                  РежимСохраненияПутейZIP.СохранятьОтносительныеПути,
                  РежимОбработкиПодкаталоговZIP.ОбрабатыватьРекурсивно);
ФайлАрхива.Записать(); 

ФайлАрхива = Новый ЧтениеZIPФайла("C:\Arch.zip");
ФайлАрхива.ИзвлечьВсе("C:\Open", РежимВосстановленияПутейФайловZIP.Восстанавливать);
ФайлАрхива.Закрыть();

Как сравнить два текстовых файла?

ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
ДиалогОткрытияФайла.Фильтр = "Текстовый документ(*.txt)|*.txt"; 

// Выбрать первый файл.
ДиалогОткрытияФайла.Заголовок = "Выберите первый файл:";
ДиалогОткрытияФайла.Выбрать();
ИмяФайла1 = ДиалогОткрытияФайла.ПолноеИмяФайла; 

// Выбрать второй файл.
ДиалогОткрытияФайла.Заголовок = "Выберите второй файл:";
ДиалогОткрытияФайла.Выбрать();
ИмяФайла2 = ДиалогОткрытияФайла.ПолноеИмяФайла; 

// Сравнить выбранные файлы.
СравнениеФайлов = Новый СравнениеФайлов();
СравнениеФайлов.ПервыйФайл = ИмяФайла1;
СравнениеФайлов.ВторойФайл = ИмяФайла2;
СравнениеФайлов.ИгнорироватьПустоеПространство = Истина;
СравнениеФайлов.СпособСравнения = СпособСравненияФайлов.ТекстовыйДокумент; 

СравнениеФайлов.ПоказатьРазличия();

Как организовать контроль формирования файла внешним приложением?

Процедура ПроверкаНаличияФайла() ИмяКаталога = "c:\temp"; 

	Маска = "*.xml";
	НайденныеФайлы = НайтиФайлы(ИмяКаталога, Маска); 

	Для Каждого Файл Из НайденныеФайлы Цикл
		Сообщить(Файл.Имя);
	КонецЦикла; 

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

ПодключитьОбработчикОжидания("ПроверкаНаличияФайла", 10);
Tags: ,

1C Работа с HTML-документами
хуй
antipodarok

Заполнение HTML-анкет

Фамилия <input ... >
Имя <input ... >
Отчество <input ... >
Процедура URLПриИзменении(Элемент)
	ЭлементыФормы.ПолеHTML.Перейти(URL);
КонецПроцедуры 

Процедура ПолеHTMLДокументСформирован(Элемент) 

	// Событие возникает и при открытии формы, когда в реквизите
	// URL содержится пустая строка.
	Если URL <> "" Тогда
		Док = ЭлементыФормы.ПолеHTML.Документ; 

		// При попытке обратиться к несуществующему свойству
		// произойдет ошибка
		Док.forms["frm"].fam.Value = "Иванов";
		Док.forms["frm"].nam.Value = "Иван";
		Док.forms["frm"].otch.Value = "Иванович";
	КонецЕсли; 

КонецПроцедуры
Tags: ,

1C DBF-файлы
хуй
antipodarok

Как можно построить выгрузку-загрузку посредством файлов DBF?

БД = Новый XBase;
БД.Поля.Добавить("CODE", "S", 5);
БД.Поля.Добавить("NAME", "S", 40);
БД.СоздатьФайл(Путь + "start.dbf", Путь + "index.cdx");
БД.Индексы.Добавить("IDXCODE", "CODE");
ФлИБД = БД.СоздатьИндексныйФайл(Путь + "index.cdx");
БД.АвтоСохранение = Истина; 

Выборка = Справочники.Номенклатура.ВыбратьИерархически();
Пока Выборка.Следующий() Цикл
	БД.Добавить();
	БД.CODE = Выборка.Код;
	БД.NAME = Выборка.Наименование;
КонецЦикла; 

БД.ЗакрытьФайл(); 

БД = Новый XBase;
БД.ОткрытьФайл(Путь + "start.dbf", Путь + "index.cdx");
БД.ТекущийИндекс = БД.Индексы.IDXCODE; 

Пока БД.Следующая() Цикл
	Сообщить(БД.CODE);
	Сообщить(БД.NAME);
КонецЦикла; 

БД.ЗакрытьФайл();

1С XML
хуй
antipodarok

Как из одной базы перенести документ в другую базу?

// Выгрузить в файл xml.
ЗаписьXML=Новый ЗаписьXML();
ЗаписьXML.ОткрытьФайл("c:\doc.xml");
ЗаписьXML.ЗаписатьНачалоЭлемента("Root"); 

// Получить объект по ссылке.
ВыгружаемыйОбъект=Документ.ПолучитьОбъект(); 

// С помощью средств сериализации записать объект в файл.
ЗаписатьXML(ЗаписьXML,ВыгружаемыйОбъект); 

ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.Закрыть(); 

ЧтениеXML=Новый ЧтениеXML();
ЧтениеXML.ОткрытьФайл("c:\doc.xml"); 

// Текущим становится элемент Root.
ЧтениеXML.Прочитать(); 

// Текущим становится элемент с документом.
ЧтениеXML.Прочитать(); 

// Проверить сможет ли с данным значением "справиться"
// система сериализации в данной базе.
Если ВозможностьЧтенияXML(ЧтениеXML) Тогда 

	// Получить ДокументОбъект.РеализацияТоваровУслуг
	ЗагружаемыйОбъект=ПрочитатьXML(ЧтениеXML); 

	ЗагружаемыйОбъект.Записать();
КонецЕсли; 

ЧтениеXML.Закрыть();

Как можно сформировать XML-документ произвольной структуры?

Запись = Новый ЗаписьXML;
Запись.ОткрытьФайл(ПутьКФайлу);
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("Корневой");
Запись.ЗаписатьАтрибут("Справочник", "Номенклатура");
Запись.ЗаписатьКомментарий("Краткая информация о номенклатуре"); 

Выборка = Справочники.Номенклатура.ВыбратьИерархически(); 

Пока Выборка.Следующий() Цикл
	Если Выборка.ЭтоГруппа Тогда
		Продолжить;
	КонецЕсли; 

	Запись.ЗаписатьНачалоЭлемента("Элемент");
	Запись.ЗаписатьАтрибут("Код", Строка(Выборка.Код));
	Запись.ЗаписатьАтрибут("Артикул", Строка(Выборка.Артикул));
	Запись.ЗаписатьТекст(Выборка.Наименование);
	Запись.ЗаписатьКонецЭлемента();
КонецЦикла; 

Запись.ЗаписатьКонецЭлемента();
Запись.Закрыть();

Как сформировать XML-документ в строку?

Запись = Новый ЗаписьXML();
Запись.УстановитьСтроку();
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("Корневой");
Запись.ЗаписатьАтрибут("Справочник", "Номенклатура");
Запись.ЗаписатьКомментарий("Краткая информация о номенклатуре"); 

Выборка = Справочники.Номенклатура.ВыбратьИерархически(); 

Пока Выборка.Следующий() Цикл
	Если Выборка.ЭтоГруппа Тогда
		Продолжить;
	КонецЕсли; 

	Запись.ЗаписатьНачалоЭлемента("Элемент");
	Запись.ЗаписатьАтрибут("Код", Строка(Выборка.Код));
	Запись.ЗаписатьАтрибут("Артикул", Строка(Выборка.Артикул));
	Запись.ЗаписатьТекст(Выборка.Наименование);
	Запись.ЗаписатьКонецЭлемента();
КонецЦикла; 

Запись.ЗаписатьКонецЭлемента();
Стр = Запись.Закрыть();
Сообщить(Стр);

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

ЗаписьXML = Новый ЗаписьXML();
ЗаписьXML.УстановитьСтроку();
Данные = СсылкаНаДокумент.ПолучитьОбъект();
ЗаписатьXML(ЗаписьXML, Данные);
ТекстСообщения = ЗаписьXML.Закрыть(); 

Текст = Новый ТекстовыйДокумент;
Текст.УстановитьТекст(ТекстСообщения);
Текст.Записать(ПутьКФайлу); 

Текст = Новый ТекстовыйДокумент;
Текст.Прочитать(ПутьКФайлу); 

ЧтениеXML = Новый ЧтениеXML();
ЧтениеXML.УстановитьСтроку(Текст.ПолучитьТекст()); 

Если ВозможностьЧтенияXML(ЧтениеXML) Тогда
	Данные = ПрочитатьXML(ЧтениеXML);
	Данные.Записать();
КонецЕсли;

Как можно загрузить XML документ произвольной структуры?

Чтение = Новый ЧтениеXML;
Чтение.ОткрытьФайл(ПутьКФайлу); 

Пока Чтение.Прочитать() Цикл 

	// Прочитать "структурные части" элементов.
	// Проверить, какая часть элемента - текущая.
	Если Чтение.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
		ИмяУзла = Чтение.Имя; Сообщить("--" + ИмяУзла); 

		// Атрибуты элементов можно читать только если текущая часть -
		// начало элемента
		Пока Чтение.ПрочитатьАтрибут() Цикл 

			// Прочитать данные узла атрибута.
			ТипУзла = Чтение.ТипУзла;
			Имя = Чтение.Имя;
			Значение = Чтение.Значение; 

			// Обработать полученные значения.

		КонецЦикла;

	ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.Текст Тогда 

		// В примере просто выводим текст в окно сообщений.
		Сообщить("Текст:" + Чтение.Значение); 

	ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда 

		// В примере просто выводим признак конца элемента
		// в окно сообщений Сообщить("--Конец:" + Чтение.Имя); 

	КонецЕсли; 

КонецЦикла;
Tags: ,

1С Текстовый файл
хуй
antipodarok

Как выгрузить данные из справочника в текстовый файл?

Текст = Новый ТекстовыйДокумент;
Выборка = Справочники.Номенклатура.Выбрать(); 

Пока Выборка.Следующий() Цикл
	Стр = СтрЗаменить(Выборка.Наименование, Символ(34), "%квч%");
	Код = Строка(Выборка.Код) + Символ(34);
	Текст.ДобавитьСтроку(Код + Стр);
КонецЦикла; 

Текст.Записать("c:\temp\text.txt");

Как загрузить данные из текстового файла?

Текст = Новый ТекстовыйДокумент;
Текст.Прочитать("c:\temp\text.txt"); 

Для НомерСтроки = 1 По Текст.КоличествоСтрок() Цикл
	Стр = Текст.ПолучитьСтроку(НомерСтроки);
	Позиция = Найти(Стр, Символ(34));
	Код = Сред(Стр, 1, Позиция-1); прНаименование = Сред(Стр, Позиция + 1);
	Наименование = СтрЗаменить(прНаименование, "%квч%", Символ(34)); 

	Сообщить(Код + "-" + Наименование);
КонецЦикла;

Работа с текстом. Модель последовательного доступа

Путь = "c:\temp\text.txt";
Текст = Новый ЗаписьТекста(Путь, КодировкаТекста.UTF8);
Выборка = Справочники.Номенклатура.Выбрать(); 

Пока Выборка.Следующий() Цикл
	Текст.ЗаписатьСтроку(Выборка.Наименование);
КонецЦикла; 

Текст.Закрыть(); 

Путь = "c:\temp\text.txt";
Текст = Новый ЧтениеТекста(Путь, КодировкаТекста.UTF8);
Стр = Текст.ПрочитатьСтроку(); 

Пока Стр <> Неопределено Цикл
	Стр = Текст.ПрочитатьСтроку();
	Сообщить(Стр);
КонецЦикла;
Tags:

1С Оповещение со ссылкой и картинкой
хуй
antipodarok

ПоказатьОповещениеПользователя(“Внимание”,
“http://Gorchakoff.com”,
“Вы сейчас тут”,
БиблиотекаКартинок.БизнесПроцесс);


1С Word
хуй
antipodarok

ПРоцедура ВыбКаталог()
перем каталог,имя;
каталог="C:\";  

Если ФС.ВыбратьКаталог(каталог,"Выберите каталог",30)=1 тогда
	выбфайл=СокрЛП(каталог+"_"+имя+"_"+ФИО+".doc");
КонецЕсли;
КонецПроцедуры

А далее:

ТекДокВорд.SaveAs(ВыбФайл);

Tags: ,

1C Word
хуй
antipodarok

Ворд=CreateObject(“Word.Application”); ВордДок=Ворд.Documents.Open(“c:\aaa.doc”);
//Ворд.Selection.Find.Execute(тЧтоМенять,,,,,,,,,тНаЧтоМенять,2);
Ворд.Selection.TypeText(“BEGIN”);
Ворд.ActiveDocument.Tables.Add(Ворд.Selection.Range, 1, 2);
Ворд.Selection.Tables(1).Columns.PreferredWidth = Ворд.CentimetersToPoints(2);
Ворд.Selection.InsertCells(0); //Добавляем колонку
Ворд.Selection.Columns.PreferredWidthType = 3;
Ворд.Selection.Columns.PreferredWidth = Ворд.CentimetersToPoints(4);
Ворд.Selection.MoveRight(1); //шаг вправо на символ
Ворд.Selection.MoveLeft(1); //шаг влево на символ
Ворд.Selection.TypeText(“a1″); //напишем текст в левой верхней ячейке
Ворд.Selection.MoveRight(2); //переместимся в ячейку правее
Ворд.Selection.TypeText(“b1″); // и туда напишем текст
Ворд.Selection.MoveRight(2);
Ворд.Selection.TypeText(“c1″);
Ворд.Selection.InsertRowsBelow(3);//Вставить ниже 3 строки
Ворд.Selection.MoveLeft(1, 1);
Ворд.Selection.TypeText(“a2″);
Ворд.Selection.MoveRight(2);
Ворд.Selection.TypeText(“b2″);
Ворд.Selection.MoveRight(2);
Ворд.Selection.TypeText(“c2″);
Ворд.Selection.MoveLeft(2, 2); //пойдём влево на ячейкц
Ворд.Selection.MoveDown(5,2); //пойдём вниз на одну строку
Ворд.Selection.TypeText(“here”);//Вставим текст, где мы оказались
Ворд.Selection.MoveDown(5, 3); //пойдём вниз на две строки
Ворд.Selection.TypeParagraph(); //вставим новую строку в документ
Ворд.Selection.TypeText(“END”);
Ворд.DisplayAlerts=0; ВордДок.Save();
Ворд.Quit();

переход к закладке:

Док = Ворд.Documents.Add(ИмяФайла);
Выборка = Ворд.Selection;
Выборка.GoTo(-1,,,ИмяЗакладки);
Выборка.TypeText(СокрЛП(Текст));

Tags: ,

?

Log in