-Музыка

 -Подписка по e-mail

 

 -Поиск по дневнику

Поиск сообщений в fixin

 -Сообщества

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 12.12.2002
Записей: 4343
Комментариев: 24598
Написано: 35607

Выбрана рубрика .


Другие рубрики в этом дневнике: Юмор(48), Софт(42), Слова(11), скутер(95), Сайт(24), Религия(3), Развлечения(57), Програмист(15), Помогите(15), Политика(68), Органайзер(6), Опыт(59), Обмен CD(6), Мысли(53), Москва(108), мобила(17), Креатив(3), КПК(28), компьютерные игры(61), книги(1), кино(75), Карикатуры(1), Идеи(77), Закон(92), Жизнь(348), дети(12), Девушки(302), Гитара(4), XXX(51), Outlook(41)

Криворучка 1С 80: при записи и перед записью

Дневник

Пятница, 05 Августа 2005 г. 13:12 + в цитатник
Блин, в событии "При записи" пытался установить поле объекта, а оно не сохранялось - еще бы, это событие возникает, когда объект уже записан, юзайте событие "Перед записью".
Рубрики: 

Узнал что в 1С 80 нельзя программировать интерфейсы

Дневник

Пятница, 05 Августа 2005 г. 11:47 + в цитатник
И долго-долго плакал. Я то думал, что можно.
Прощай, мечта об автоматически настраиваемых меню пользователя.
Здравствуй тупой клик и копи-паст.



Для тех кто не понял - поясняю - в 80 нет возможности программным путем добавлять новые пункты меню и удалять существующие в меню пользователя.
Рубрики: 

Мучал отборы в 1С 80

Дневник

Четверг, 04 Августа 2005 г. 17:28 + в цитатник

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

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

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

Функция ОтборВосстановить(Отбор, Рез) Экспорт
Для Каждого Стр Из Рез Цикл
Эл=Отбор[Стр.Имя];
Эл.ВидСравнения=Стр.ВидСравнения;
Эл.Значение=Стр.Значение;
Эл.ЗначениеПо=Стр.ЗначениеПо;
Эл.ЗначениеС=Стр.ЗначениеС;
Эл.Использование=Стр.Использование;
Эл.Представление=Стр.Представление;
КонецЦикла
КонецФункции
Рубрики: 

Извращения 1С: хукер-мастер-класс

Дневник

Вторник, 02 Августа 2005 г. 14:19 + в цитатник
Суть проблемы - если документ только по упр учету, у него должен быть другой номер.
Введение для упр учета отдельной фирмы не годится, т.к. договоры привязаны к фирме и придется дублировать договора.
Окей, применяем умелые ручки.

Итак, практически у каждого документа вызывается функция общего модуля:
УстановитьЗаголовокФормыДокумента(Строка(ВидОперации), ЭтотОбъект, ЭтаФорма);

В эту функцию вставляем затычку, которая проверяет, есть ли в документе флажок ОтражатьВБухУчете. Если он есть, назначаем ему в событие "ПриИзменении" обработчик события изменении организации "ОрганизацияПриИзменении" (благодаря стандартам программирования 1С, он во всех формах называется одинаково, но даже если бы это было не так, его имя можно было бы взять из реквизита Организация).

Теперь в процедуру УстановитьНомерДокумента(ДокументОбъект)
общего модуля вставляем затычку, которая назначает правильно номер для упр учета и ВОЙЛА!

Теперь в форме, когда пользователь сбрасывает флажок "ОтражатьВБухУчете", у него тут же меняется номер документа.

А ведь как было бы красиво, если бы существовали глобальные события "ПриОткрытииФормы"! Не пришлось бы выискивать процедуру, которая вызывается у каждой формы.

Рубрики: 

Замечательные функции 1С 80.

Дневник

Пятница, 29 Июля 2005 г. 17:30 + в цитатник
Для тех, кто не любит писать запросы в 1С 80, предлагаю использовать (С)-Гений1С-функции для поиска и заполнения объектов:

ОбъектНайтиПоРеквизитам(Тип, Вид, Стр, Много=ложь);
Ищет объект по реквизитам, указанным в структуре Стр.
Если Много=истина, возвращается массив найденных элементов, иначе только первый найденный элемент. Поиск осуществляется с помощью запроса.

ОбъектСоздатьПоРеквизитам(Тип, Вид, Стр, СтрЗаписи, Много);
Ищет один объект(ы) по реквизитам, указанным в структуре Стр и заполняет его реквизиты согласно структуре СтрЗаписи.
Удобна в тех случаях, когда если объект существует нам нужно изменить его, а если не существует - создать.

ОбъектЗаполнитьПоРеквизитам(Объект, СтрЗаписи);
Просто заполняет Объект согласно структуре СтрЗаписи.

Стр(_Стр, К1=Неопределено, Зн1=Неопределено ..., К10=Неопределено, Зн10=Неопределено);
Если параметр _Стр - структура значений, то делается ее копия и в нее добавляются значения Зн(I) с ключами К(I).
Если же первый параметр не структура, то просто создается и возвращается структура согласно переданным значениям и ключам.
Это как бы более компактный альтернативный конструктор конструктору 1С 80 Новый Структура.

Примеры:
Объект.НайтиПоРеквизитам("Справочники", "Номенклатура", Стр("Наименование", "Пиво"), истина); - ищет пиво
Объект.НайтиПоРеквизитам("Задачи", "ЗадачаГлавная", Стр("БизнесПроцесс", БиснесПроцесс), истина); - ищет все задачи по данному бизнес-процессу

Объект.СоздатьПоРеквизитам("Справочник", "Номенклатура", Стр("Наименование", "Пиво"), Стр("Код", 12, "Артикул", 177));
Присваивает пиву код 12 и артикул 177.

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

Объект.НайтиПоРеквизитам("Справочники", "Номенклатура", Стр("Код", Стр("<", 123)), истина); - возвращает все элементы, код которых меньше 123.

Объект.НайтиПоРеквизитам("Справочники", "Номенклатура", Стр("Код", Стр("Условие", "Элемент.Код<123 И Элемент.Код>10")), истина); - возвращает все элементы, удовлетворяющим условию, написанному на языке запросов.

Объект.ЗаполнитьПоРеквизитам(Товар, Стр("Артикул", Стр("ТолькоПустые", "123-АК"), Стр("Код", Стр("ТолькоПустые", "123"))); - устанавливает товару код 123 и артикул 123-АК только в том случае, если эти реквизиты не заполнены.

Рубрики: 

Бизнес-процессы для чайников

Дневник

Четверг, 28 Июля 2005 г. 19:01 + в цитатник
Бизнес-процессы


Когда я столкнулся с бизнес-процессами, они показались мне таким же темным лесом, как в своё время регистры расчета. Я пустыми глазами смотрел на демо-пример от 1С, читал статьи в Интернете и ничего не понимал.
Однако в бизнес-процессах нет ничего сложного. Это своё кристально чистое видение я попытаюсь передать и вам.

Уясните сразу, что бизнес-процессы – это всего лишь два новых объекта в 1С 80: бизнес-процессы и задачи. Причем задачи можно использовать самостоятельно и без знания бизнес-процессов. Их можно трактовать, как список задач для текущего пользователя.

Бизнес-процесс рисуется в конфигураторе как блок-схема. В этой блок-схеме есть блоки начала и конца алгоритма, блоки выполнения (прямоугольные) и блоки условий. Чтобы бизнес-процесс мог стартовать, у него должна быть стартовая точка (одна или несколько).
Бизнес-процесс может находится в одной или сразу нескольких точках (при параллельном выполнении).

Пользователь создает новый бизнес-процесс и запускает его. Как только бизнес-процесс доходит до блока выполнения, он создает новую задачу и адресует его тому исполнителю, который прописан в этом блоке выполнения. Как только исполнитель выполняет задачу, бизнес-процесс идет дальше по блок-схеме. Условия вычисляются программно на языке 1С (анализируются реквизиты бизнес-процесса). Вот и вся нехитрая механика.

Вы видите, что задачи порождаются при выполнении бизнес-процессов. Однако они могут использоваться и без них, например создаваться программно или вручную. Они напоминают задачи MS Outlook.
Задача имеет весьма хитрый механизм, предназначенный только для того, чтобы определить какие задачи назначены текущему пользователю. Для этого используется переменная сеанса, в которой хранится текущий пользователь, регистр сведений, который указывает, какие роли может выполнять текущий пользователь и т.п.
Можно назначить задачу целому подразделению и она будет показана у всех пользователей подразделения.

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

Как видите, все очень просто. Если кто-то чего-то не понял, обращайтесь, допишу статью более понятно.

Несколько советов «чайникам».
• Посмотрите в режиме «Конфигуратор» демо-базу с ИТС - познавательно. В режиме «Предприятие» можете не смотреть, особо ничего не поймете.
• У бизнес-объекта нужно обязательно указать вид задачи – без него конфигурация не сохранится. Сначала может использовать один вид задачи для всех бизнес-процессов.
• Чтобы бизнес объект мог стартовать, у него должна быть на карте маршрута хотя бы одна точка входа.
• Каждый блок бизнес-процесса можно назначить исполнителя. Он выбирается из реквизитов адресации задачи, вид которой подвязан к бизнес процессу. Можно выбирать как исполнителя, пользователя, так и любой другой реквизит адресации, например назначить задачу подразделению.
• У задачи нужно не только заполнить реквизиты адресации, но и выбрать основной реквизит адресации, например «Пользователь», выбрать регистр сведений для адресации, переменную сеанса, которая будет соотноситься с основным реквизитом адресации и иметь с ним один тип (!) . Также не забудьте указать соотношения между реквизитами адресации задачи и измерениями регистра адресации, чтобы связь между задачей и регистром сведений заработала.
• Для контроля списка можете использовать консоль отчетов по таблице всех задач «Задачи» и виртуальной таблице задач текущего (или указанного) пользователя «ЗадачаЗадачиПоИсполнителю».
• Для отладки вы можете отключать признаки того, что бизнес-процесс стартовал или задача выполнена.
• В демо-конфигурации для вывода списка задач используется отдельная форма списка "По исполнителю", поэтому в ней показываются задачи только текущего исполнителя. Я сначала никак не мог понять, почему форма списка задач показывает все задачи, потом понял. Чтобы форма показывала задачи по исполнителю, у нее в свойствах надо поставить режим вывода задач "По исполнителю" и программно присвоить реквизиту формы Исполнитель значение текущего пользователя (см. демо-конфу).
• Режим адресации по регистру сведений работает так: если задаче назначена роль исполнителя, то и пользователю в регистре сведений должна быть назначена эта роль, а если задаче не назначена роль исполнителя, то тем не менее пользователь должен быть прописан в регистре с пустой ролью (т.е. задача все равно не назначается любому пользователю). Задача попадает в список пользователя, только если о нем есть запись в регистре адресации.

С чего начать
На самом деле самая большая сложность – это придумать бизнес-процесс, на котором можно поизучать механику. Возьмите самый простой бизнес-процесс. Менеджер выписывает расходную накладную. Руководитель отдела должен ее утвердить. После утверждения расходная накладная проводится и Кладовщик производит отгрузку. Если накладная не утверждена, она помечается на удаление и бизнес-процесс завершается.

Алгоритм примерно такой:
0:Начало
А:Выполнение: Менеджер оформляет расходную накладную.
Б:Выполнение: Руководитель отдела утверждает накладную.
В:Условие: Если накладная утверждена, тогда Г иначе Д.
Г:Выполнение: Кладовщик выполняет отгрузку. Переход на Е.
Д:Конец: Завершение бизнес-процесса в статусе «Отмена».
Е:Конец: Нормальное завершение бизнес-процесса.

Флажок утверждена можно вносить или в расходную накладную или в сам бизнес-процесс, как реквизит.

Что нужно проконтролировать:
• Когда вы запускаете бизнес-процесс, создаются задачи.
• Когда вы выполняете задачи, бизнес-процесс продвигается по карте маршрута (для этого нужно в форму бизнес-процесса вывести карту маршрута).
• Задачи появляются только у тех пользователей, которым они адресованы (вот здесь мне пришлось попотеть).

Картинка:
На картинке приведен пример, похожий на задачу. Штрихами 1С показывает пройденные точки маршрута, красным пунктиром – текущую точку маршрута.
Бизнес-процессы.GIF (321x480, 12Kb)
Рубрики: 

Извращение в 80: виртуальный вид операции

Дневник

Среда, 27 Июля 2005 г. 15:26 + в цитатник
Начинаю цикл статей про извращения в 1С 80.
Заказчик потребовал, чтобы в расходной накладной в УПП был новый вид операции - "возврат".
Ну логику работы программы менять не хотелось, добавил флажок флВозврат, который указывает что это возврат, при этом вид операции стоит прежний "ПродажаКомиссия".
Но чтобы угодить заказчику, извращаюсь так - добавляю в поле вид операции новое действие возврат и если пользователь выбирает его, устанавливаю флажок возврат, а вид комиссии оставляю "ПродажаКомиссия".
Изменения затронули три или четыре места в форме. Вот так.
То бишь для заказчика это выглядит как новый вид операции, для программиста - как флажок на возврат с нормальным видом операции.


Новая кнопка вставляется, к примеру, кодом (имитируется объект метаданных):

ТмпМассив=Новый Массив();
ТмпМассив.Добавить(Новый Структура("Имя,Синомим","Возврат","возврат через реализацию"));
УстановитьПодменюВыбораВидаОперации(ЭлементыФормы.ДействияФормы.Кнопки.ПодменюВидаОперации,
ТмпМассив,
Новый Действие("ДействияФормыДействиеУстановитьОперацию"));
реализация через возврат.GIF (487x225, 14Kb)
Рубрики: 

В 1С 80 есть групповой редактор ролей

Дневник

Среда, 27 Июля 2005 г. 14:17 + в цитатник
Смотрите какой красивый, и даже RLS (Record Level Security) показывает.
групповой редактор ролей.GIF (699x441, 163Kb)
Рубрики: 

Способ обновления типовых конфигураций

Дневник

Вторник, 26 Июля 2005 г. 10:48 + в цитатник
В 1С 80 есть недооцененная пока еще до конца возможность выгрузки/загрузки большей части конфигурации в файлы.
Это пункты меню:
* Конфигурация - Выгрузить файлы конфигурации
* Конфигурация - Загрузить файлы конфигурации
Выгружать можно текстовые модули, MXL-макеты и содержимое справки в формате HTML.
Таким образом можно предусмотреть такой способ обновления типовой конфигурации:
1. Типовая конфигурация выгружается в файлы.
2. Файлы обрабатываются обработками (достаточно простыми, потому что они работают с файлами txt, mxl, html). mxl файлы можно обрабатывать обработками 1С 80, сначала загрузив макет, потом его сохранив. Остальные файлы можно обрабатывать в любой программе.
3. Полученные файлы загружаются обратно в конфигурацию.
4. Производится обновление текущей конфигурации полученной.

К сожалению, из конфигурации пока (?) не выгружаются права доступа и формы.
Что касается форм, можно таким образом подходить к программированию изменений в типовые формы, чтобы нужные элементы типовых форм создавались программно. Тогда эти изменения можно сделать на уровне текстов модулей.
Рубрики: 

Дружеский шарж.

Дневник

Понедельник, 25 Июля 2005 г. 16:38 + в цитатник
Разбирая свои архивы, наткнулся на это, гыгыгы...

fixin_programmist1.jpg (357x500, 46Kb)
Рубрики: 
Юмор

Советы дебуггерам 80

Дневник

Понедельник, 25 Июля 2005 г. 15:40 + в цитатник
Всем известно, что в 1С80 нельзя по хоту отладки менять значения переменных.
Однако есть выход!
В общем модуле объявите функцию:

Функция Присвоить(А,Б) Экспорт
А=Б; Возврат А;
КонецФункции

Теперь если вам нужно изменить значение какой-то переменной по ходу программы, вызовите табло Ctrl+Alt+W или значение выражения Shift+F9
и наберите там например так:
Присвоить(Отказ, ложь), т.е. переменной отказ присвоится значение ложь.
Рубрики: 

Причесал обработку от 1С

Дневник

Четверг, 21 Июля 2005 г. 15:20 + в цитатник
У 1С 80 есть замечательная обработка для поиска дублей. Она даже осуществляет интеллектуальный поиск по похожести реквизитов.
Все похожие элементы она объединяет в группы элементов и с этими группами можно работать - указывать главный элемент, заменять в ссылках и т.п.
Но вот беда - когда таких групп и дублей под сотни, работать уже неудобно - попробуй перебрать сотни групп.
Я доработал обработку, чтобы можно было работать со всеми группами в таблице сразу, автоматически выбирать в качестве правильного элемента первый, а потом поправлять и запускать замену для всех найденных дублей.
Вот эта обработка, юзайте, кому надо.:present:!!!
Рубрики: 

Ошибка ОЛЕ

Дневник

Пятница, 01 Июля 2005 г. 11:29 + в цитатник
Вот эта ошибка ОЛЕ попортила мне много крови, блин.

Рубрики: 

Фильтр строк в 1С8

Дневник

Четверг, 16 Июня 2005 г. 18:52 + в цитатник
К сожалению строки в таблице значений 1С8 можно фильтровать только так, как на картинке.

Рубрики: 

Интиресно.

Дневник

Четверг, 26 Мая 2005 г. 11:10 + в цитатник
Интересно, почему 1С так и не выпустила мультифирменную 1С-бухгалтерию под 77, зато бухгалтерия под 1С8 вышла сразу мультифирменной! :)
Рубрики: 

Глючонок

Дневник

Среда, 18 Мая 2005 г. 14:42 + в цитатник
После вызова 77 в Оле возник такой вот глючонок.
Рубрики: 

Функции Document Object Model (DOM) для 8.0

Дневник

Четверг, 21 Апреля 2005 г. 17:48 + в цитатник
Набросал набор функций для работы с DOM для 1С 8.0, думаю будет полезным!

Функция DOMДокумент(Узел)
ДОМ=Узел.ownerDocument;
Если ДОМ=Неопределено Тогда
ДОМ=Узел;
КонецЕсли;
Возврат ДОМ;
КонецФункции

Функция DOMКорень(Дом)
Возврат Дом.DocumentElement;
КонецФункции

Функция DOMДобавитьУзел(УзелРодитель, Имя)
XMLDOMNode =DOMДокумент(УзелРодитель).createElement(Имя);
УзелРодитель.appendChild(XMLDOMNode);
Возврат XMLDOMNode;
КонецФункции

Функция DOMДети(Узел)
Перем Рез;
Рез=Новый Массив();
Для Инд=0 По Узел.ChildNodes().Length-1 Цикл
Рез.Добавить(Узел.ChildNodes(Инд));
КонецЦикла;

Возврат Рез;
КонецФункции


Процедура DOMУстановитьАтрибут(Узел, Имя, Значение)
Узел.setAttribute(Имя, Значение);
КонецПроцедуры

Процедура DOMУстановитьТекст(Узел, Текст)
Узел.Text=Текст;
КонецПроцедуры

Функция DOMУзелАтрибут(Узел, Имя)
Возврат Узел.GetAttribute(Имя);
КонецФункции

Функция DOMУзелИмя(Узел)
Возврат Узел.baseName;
КонецФункции


Функция DOMУзелПолучить(Узел, Имя, Массив=ложь)
Перем Рез;
Рез=Новый Массив();

ДОМ=DOMДокумент(Узел);
ДОМ.SetProperty("SelectionLanguage","XPath");
//Узлы = Узел.SelectNodes("//*[name()='"+Имя+"']");
Узлы = Узел.SelectNodes(Имя);
Для Инд=0 По Узлы.Length-1 Цикл
Если Массив=ложь Тогда
Возврат Узлы.item(Инд);
КонецЕсли;
Рез.Добавить(Узлы.item(Инд));
КонецЦикла;
Если Массив=Ложь Тогда
Возврат Неопределено;
КонецЕсли;
Возврат Рез;

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

Функция DOMУзелТекст(Узел)
Возврат Узел.Text;
КонецФункции


Функция DOMУстановитьКодировку(ДОМ, Кодировка="windows-1251")
pi = ДОМ.createProcessingInstruction("xml", " version='1.0' encoding='"+Кодировка+"'");
ДОМ.appendChild(pi);
КонецФункции
Рубрики: 

Неудачка.

Дневник

Вторник, 15 Марта 2005 г. 12:30 + в цитатник
Не получилося у меня сдать 1С:Специалист по Бухгалтерии.
Задачка была такая, что программировать ничего не нужно было, только простенький отчет.
Кто сдавал, знает, что задачек там раз-два и обчелся, поэтому на экзамене одну и ту же задачу могут решать несколько претендентов.
Задачи все хитрые, расчитаны на то, чтобы все сделать штатными средствами, любит Чистов указывать - вот видите, типовой документ сделал еще такие проводки, а ваш не сделал.
Еще любят валить на налоговом учете, который никто толком не знает.
Задача у меня была про лицензирование и руссификацию софта, не являющегося НМА (неисключительные права).
Я все сделал типовыми документами - допер таки.
Покупку лицензии и русификацию оформлял как поступлетие услуги, оплату - обычная оплата через банк. Для иностранного нерезидента есть фишка - в договоре следует указать - расчеты для нерезидента, тогда будет НДС выделяться, как указано в задаче. Все это я нашел сам.
Правильным решением было рассматривать лицензирование как одной-единственной услуги "лицензирование", а конкретный софт - как вид аналитики на счете 97 (расходы будущих периодов). Сначала я не заприметил там аналитики, потом было поздно.
Добило препода то, что я использоват платежный ордер вместо платежного поручения и не знал разницы между ними. :)
Вообще можно придти к преподу и уточнить проводки по налоговому учету. Я, кстати использовал типовую и взял организацию с учетом по упрощенке, поэтому по налоговым счетам у меня проводок не было, а были по УСН. :)
Схема проводок у меня была правильная, но реализация, гыгыгыгы...
Задача простецкая вообще-то, если знать как решать.
Короче, могила...
Рубрики: 

1С8 - крутая весчь!

Дневник

Вторник, 15 Марта 2005 г. 11:19 + в цитатник
В 8-ке есть замечательная функция для обмена данными: УстановитьСсылкуНового (SetNewObjectRef).
Вот например в объекте есть ссылка на объект который еще не задан.
Заводить этот еще не созданный объект?
Нет, заводим ссылку на этот объект методом УстановитьСсылкуНового, и подставляем ссылку, а объект заводим потом и назначаем ему эту ссылку.
Элегантное решение.
И еще один нюанс - можно отключить контроль при записи элементов если указывать перед записью ОбменДанными.Загрузка=истина
Правда реализуется это через то, что в модуле записи анализируется:
Если ОбменДанными.Загрузка=истина Тогда не контролировать корректность данных. Т.е. в типовых это есть, а в самописных могут забыть поставить.
Было бы логично сделать галочку в конфигураторе - при обмене данными не контролировать. Ну да ладно, и так неплохо.
Рубрики: 

Сдал Профессионала по 1С 8:Бух

Дневник

Суббота, 05 Марта 2005 г. 15:03 + в цитатник
Сдал Профессионала по 1С 8:Бух. Да, теперь я трижды медалист и дважды орденоносец, гыгыгы...
Рубрики: 


 Страницы: 5 4 3 [2] 1