Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Волшебство программирования на 1С:Предприятие 7.7 и 8.0. Выпуск 97


Информационный Канал Subscribe.Ru

Если Вы_Программист_1С И Есть_Опыт Тогда

Замечательно!
Нам нужны специалисты по 8.0 на реальные проекты.

Иначе

Не беда!
Мы вас бесплатно научим и опыт у вас появится.

КонецЕсли;

Крупная компания 1С: Франчайзи "1С:Бухучет и Торговля" объявляет набор на вакансии
* программист 1С,
* ведущий специалист 1С в отделы проектов и внедрения.

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

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

Мы приглашаем программистов из регионов, возможно предоставление жилья.

Зарплата зависит от вашей квалификации:

  • ученикам-падаванам - 500$,
  • рыцарям-джедаям, специалистам среднего уровня - 1000-1700$,
  • а настоящим ГУРУ, в полной мере овладевшим силой восьмерки - 2000$

тел. 748-03-28, personal_mos@1cbit.ru
Подробности на сайте www.1cbit.ru


Волшебство программирования на 1С:Предприятие 7.7 и 8.0
Выпуск 97 / 08.02.2006

 Хранилище значений - это тип, который появился в 8.0, позволяющий сохранять прямо в базе различные данные, включая двоичные данные (произвольные файлы). Например, так можно хранить в базе данных JPG-картинки, Word-документы и т.д. Причем данные будут храниться в самой базе (файле 1CD или в таблицах на SQL-сервере) и будут включены в штатную выгрузку базы или резервную копию средствами SQL Server.

Тип Хранилище значения может быть назначен реквизиту справочника, документа, ресурсу регистра сведений и т.д.

В хранилище значение можно сохранить почти любую информацию, например,

... картинки (фотки):

ТекИзображение.Объект = СпрТкани.Ссылка;
ТекИзображение.ВидДанных = Перечисления.ВидыДополнительнойИнформацииОбъектов.Изображение;
Хранилище = Новый ХранилищеЗначения(НоваяКартинка, Новый СжатиеДанных());
ТекИзображение.Хранилище = Хранилище.Получить();

// в этом месте он все выводит ...
ЭлементыФормы.ПолеКартинки1.Картинка = Хранилище.Получить();
ТекИзображение.Записать();
...табличный документ:
Процедура СохранитьВХранилищеНажатие(Элемент)
    ТабДок=Новый ТабличныйДокумент;    
    ТабДок.Вывести(ЭлементыФормы.ПолеТабличногоДокумента1);
    Хранилище=Новый ХранилищеЗначения(ТабДок);
    Записать();
КонецПроцедуры

Процедура ВосстановитьИзХранилищаНажатие(Элемент)
    ТабДок=Хранилище.Получить();
    Если ТабДок<>Неопределено Тогда
        ЭлементыФормы.ПолеТабличногоДокумента1.Вывести(ТабДок);
    КонецЕсли;
КонецПроцедуры
... произвольные файлы (двоичные данные):
ХЗ = Новый ХранилищеЗначения(Новый ДвоичныеДанные(файл));
Восьмерка поддерживает сжатие данных, помещаемых в хранилище:
ХЗ = Новый ХранилищеЗначения(Новый ДвоичныеДанные(файл),Новый СжатиеДанных(9));
... внешние обработки и отчеты:
Процедура ЗагрузитьОбработкуВХранилище(РеквизитТипХранилище)
   СтепеньСжатия = Новый СжатиеДанных(9); //9 максимум   
   РеквизитТипХранилище = Новый ХранилищеЗначения(Новый ДвоичныеДанные("c:\отчеты\отчет.epf", СтепеньСжатия));
КонецПроцедуры
  
Процедура ЗапуститьОбработкуИзХранилища(РеквизитТипХранилище)
   ИмяВременногоФайла = КаталогВременныхФайлов()+"отчет.epf";
   ДвоичныеДанные = РеквизитТипХранилище.Получить();
   ДвоичныеДанные.Записать(ИмяВременногоФайла);
   ВнешняяОбработка = ВнешниеОбработки.Создать(ИмяВременногоФайла);
   ВнешняяОбработка.ПолучитьФорму().Открыть();
КонецПроцедуры
Если это были ДвоичныеДанные, то их можно восстановить из хранилища значения методом Получить и записать в файл методом Записать().
Если ТипЗнч(Хранилище) <> Тип("ДвоичныеДанные") Тогда
    ДвоичныеДанные = Хранилище.Получить();
Иначе
    ДвоичныеДанные = Хранилище;
КонецЕсли; 
ДвоичныеДанные.Записать(ИмяФайла);
Если это был, например, Word-документ (doc-файл, или другой файл зарегистрированного типа), то его можно открыть так:
ЗапуститьПриложение(ИмяФайла);
Чтобы очистить поле типа Хранилище значения, нужно присвоить ему Неопределено:
РеквизитХранилище = Неопределено;
Если в Хранилище значений содержались какие-то ссылки, то они не будут контролироваться при контроле ссылочной целостности (операция Удаление помеченных объектов или метод НайтиПоСсылкам).


Новости mista.ru

На Волшебном форуме появился программный агент - ТелепатБот, пытающийся автоматически отвечать на типичные вопросы новичков по 1С.

ТелепатБот отвечает ссылкой на статью, если она есть в Книге знаний www.kb.mista.ru и для нее заданы ключевые слова. Думать он не умеет, хотя на первый взгляд может показаться, что его ответы осмысленные. Он просто ищет по ключевым словам наиболее похожие статьи из своей базы и дает ссылки, например:


Вопрос: Как работать со сканером штрих-кода, который подключается к последовательному COM-порту с интерфейсом RS-232?

ТелепатБот: Работа с последовательным (COM, RS-232) портом из 1С:Предприятие 7.7 и 8.0


Вопрос: Как в 1С 8.0 программно управлять списком пользователей? Хочется программно добавить/удалить пользователя, или назначить ему нужную роль.

ТелепатБот: v8: Права пользователей в 1С:Предприятии 8.0


Вопрос:Какие-то странности с преобразованием числа 2005 к строке. При этом вставляется лишний символ - пробел и получается строка - 2 005. СтрЗаменить не помогает. Синтакс-помощник по функции Формат читал, ничего не нашел.

ТелепатБот: v8: Преобразование числа в строку, разделитель групп разрядов


Вопрос: ТелепатБот, ответь, как вычислить квадратный корень в 1С или возвести число в степень 1/2 ?

ТелепатБот: Математические вычисления в 1С


Вопрос: Как реализовать генератор случайных чисел в 1С?

ТелепатБот: Генератор случайных чисел в 1С


Вопрос: Хочу сделать распределенную базу на 8.0, то что в 7.7 называлось "УРБД". Я слышал, что за это отвечает объект "План обмена". Наставьте на путь истинный.

ТелепатБот: v8: УРБД на v8 за четыре шага.


Вот пара реальных вопросов, взятых с форума:

Вопрос:
Открыл в конфигураторе УПП 1.0
Хотел план счетов подредактировать, а там все заблокировано - стоят "замочки" напротив каждого элемента конфигурации. Т.е. защита от изменений. Можно это как-то отключить?
http://www.forum.mista.ru/topic.php?id=12936

ТелепатБот: Почему не удается редактировать типовую конфигурацию?


Вопрос:
Я установил типовую конфигурацию "Управление Торговлей".
Потом зашел в конфигуратор и захотел внести некоторые изменения - но ничего не выходит. Невозможно ничего изменить... Нельзя стереть те данные, что уже есть.
А напротив каждого пункта конфигурации стоит значок в форме красного замка, при наведении на который появляется надпись "Объект поставщика не редактируется".
У меня большая просьба к знающим людям, ответить на вопросы:
1) Я не могу внести изменения в конфигураторе, т.к. это ТИПОВАЯ конфигурация?
2)Как мне получить возможность вносить изменения? Создать новую НЕ типовую конфигурацию?
3)Можно ли изменить типовую конфигурацию, чтобы не настраивать новую с самого начала?
Очень жду ответа
http://forum.mista.ru/topic.php?id=86274

ТелепатБот: Почему не удается редактировать типовую конфигурацию?


Статистика по ответам ТелепатБота за первый день работы пока неоднозначная: 2 верных ответа на вопрос, 3 ответа в тему, 7 ответов невпопад. Обсуждение ТелепатБота и его алгоритма ведётся в секции "Искусственный интеллект" на Волшебном форуме. Приглашаю принять участие.


Официальный сайт рассылки - www.mista.ru
Волшебный форум -
www.forum.mista.ru
Книга знаний - www.kb.mista.ru

С уважением,
Станислав Митичкин (Волшебник)
stasmit@mail.ru



Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.magic1c
Архив рассылки
Отписаться Вебом Почтой
Вспомнить пароль

В избранное