Вопрос № 122843: Добрый День Уважаемые Эксперты!
Подскажите как можна отлавливать событие Печать!
Задача: Если документ уже напечатан то во все последующих копиях
в фоне выводится "КОПИЯ"
Спасибо!
...Вопрос № 122919: Здравствуйте уважаемые эксперты.
1С бухгалтерия 7.7. Вношу изменения в конфигурацию. Нужно при подборе, вместо стандартного окошка "Введите количество" поставить свою обработку пересчета товара на разные единицы измерения....Вопрос № 122927: Здравствуйте уважаемые эксперты.
1С бухгалтерия 7.7. Создаю на основе счета накладную. При создании нужно отследить, есть ли еще накладные, созданные на основании этого счета. ...Вопрос № 122931: Здравствуйте уважаемые эксперты! 7.7 Бухгалтерия. Как можно реализовать контроль уникальности ИНН контрагента, за исключением выборки всех элементов? найти по реквизиту не подходит ведь? т.к. в ИНН ещё и КПП пишется...Вопрос № 122936: Вопрос по версии 7.7 1)
Какие возможности появляются при снятии флажка "Автоматическое удаление движений" при редактировании свойств вида документов и описания структуры, или почему хорошо или плохо применять в Процедуре ОбработкаП...Вопрос № 122939: Здравствуйте! Ответьте, пожалуста, на вопрос по 8.0. Есть СписокЗначений, куда заброшены названия всех документов, как они зыданы в конфигураторе. Пользователю дана возможность выбрать конкр
етный документ. Как по выбранному документу сделать цыкл? (П...Вопрос № 122945: Здравствуйте уважаемые эксперты.
У меня возникла проблемка с ПланомОбмена (вопрос по УПП 8.1). Дело в том что из главного узла хотелось бы передавать не все подряд изменения в базе,а только по определенным подсистемам (т.е. все что касается произ...
Вопрос № 122.843
Добрый День Уважаемые Эксперты!
Подскажите как можна отлавливать событие Печать!
Задача: Если документ уже напечатан то во все последующих копиях
в фоне выводится "КОПИЯ"
Спасибо!
Отправлен: 12.02.2008, 17:25
Вопрос задал: Metelskij (статус: Посетитель)
Всего ответов: 4 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Крюков Р.А.
Здравствуйте, Metelskij!
Предлагаю такое решение в реквизиты шапки документа добавить реквизит "Копия" с возможными значениями 1 и 0 в модуле формы процедуре печати прописать
блок
Если Копия=1 Тогда
..... //вывести секцию "Копия"
КонецЕсли;
.....
.....
Копия=1;
КонецПроцедуры; // Печать
при распроведении можно скидывать флажок в 0
--------- Отвечаю только на вопросы в тему.
Ответ отправил: Крюков Р.А. (статус: 3-ий класс)
Ответ отправлен: 12.02.2008, 17:55
Отвечает: Кулевский Сергей Владимирович
Здравствуйте, Metelskij!
Если 8.x, то можно создать свойство у объекта и при печати его проверять заполнено или нет.
Ответ отправил: Кулевский Сергей Владимирович (статус: 2-ой класс)
Ответ отправлен: 12.02.2008, 19:20 Оценка за ответ: 5
Отвечает: Сергей Максименко [Elric]
Здравствуйте, Metelskij!
1. В версии 7.7 это событие не отлавливатся 100%.
2. Иногда документ надо перепечатать, так чтоб был еще один экземпляр чистый и последующие "КОПИЯ" (предыдущие соответственно изничтожить). Так что все равно пользователь будет решать, когда оригинал печатать, а когда копию.
--------- В творчестве рождается истина
Ответ отправил: Сергей Максименко [Elric] (статус: Профессионал) Украина, Киев Тел.: (044) 22-88-369 Организация: МАКСЕР, "1С:Предприятие" в Киеве Адрес: г. Киев WWW:www.makser.com.ua ---- Ответ отправлен: 13.02.2008, 01:31 Оценка за ответ: 5
Отвечает: Ahab
Здравствуйте, Metelskij!
Пользователь мог просто вывести на экран печатную форму и закрыть её без печати.
как вариант может насильно заставлять пчатать один экземпляр отправляя его сразу на принтер (см. описание Напечатать()), а остальные оказывать на экране с пометкой "копия",
но опять же кто гарантирует что с принтером всё впорядке, что его не выкинут просто, ну и прочее..
хотя тут опять же простор для фантазии - можно завести лог-файл куда записывать кто какой документ печатал и спрашивать с него за потерянные экземпляры..
а штатных средств в 7.7 как уже говорилось - нету... сам бы хотел :)
Ответ отправил: Ahab (статус: 4-ый класс)
Ответ отправлен: 13.02.2008, 03:51 Оценка за ответ: 5
Вопрос № 122.919
Здравствуйте уважаемые эксперты.
1С бухгалтерия 7.7. Вношу изменения в конфигурацию. Нужно при подборе, вместо стандартного окошка "Введите количество" поставить свою обработку пересчета товара на разные единицы измерения.
Отвечает: Strawberry
Здравствуйте, Александр Павлович!
Если подбор из формы списка то пользуем процедуру
Процедура ПриВыбореСтроки()
КонецПроцедуры
Синтаксис:
ПриВыбореСтроки()
Назначение:
Предопределенная процедура при выборе строки списка.
Замечание:
Режим обработки выбора строки (двойной щелчок мыши или клавиша Enter) предопределенной процедурой ПриВыбореСтроки включается в форме списка справочника, журнала документов, счетов, журнала операций, журнала проводок при помощи метода Форма.ОбработкаВыбораСтроки(1). Данная процедура может располагаться только в программном модуле формы.
--------- Мальчик-извращенец прочел деду Морозу с табуретки всего Пастернака!
Ответ отправил: Strawberry (статус: Студент)
Ответ отправлен: 13.02.2008, 10:04 Оценка за ответ: 5
Вопрос № 122.927
Здравствуйте уважаемые эксперты.
1С бухгалтерия 7.7. Создаю на основе счета накладную. При создании нужно отследить, есть ли еще накладные, созданные на основании этого счета.
Отвечает: Strawberry
Здравствуйте, Александр Павлович!
В Процедура ВводНаОсновании(ДокОснование) в накладной добавляем код см. пприложение
Приложение:
--------- Мальчик-извращенец прочел деду Морозу с табуретки всего Пастернака!
Ответ отправил: Strawberry (статус: Студент)
Ответ отправлен: 13.02.2008, 10:18 Оценка за ответ: 5 Комментарий оценки: Вроде бы все и просмотрел, но наверное под утро уже плохо соображал. Стандартная процедура.
Отвечает: Ушаков Михаил Андреевич
Здравствуйте, Александр Павлович!
Посмотрите справку по методу ВыбратьПодчиненныеДокументы(). Если не понятно, уточните, что не получится :с)
Какой результат Вам нужен? Если открыть форму существующего документа на основании, то ввод на основании придется делать отдельной процедурой документа Счет, где выбирать подчиненные документы и получать существующую накладную. Если просто необходимо отследить уже выписанный товар и сумму из счета, то метод ВыбратьПодчиненныеДокументы() нужно вызывать в модуле формы новой накладной в процедуре ВводНаОсновании(ДокОсн) применительно к документу-основанию, т.е. ВыбратьПодчиненныеДокументы(,,ДокОсн) и в цикле по
полученным документам анализировать существующие документы вида "Накладная"
Ответ отправил: Ушаков Михаил Андреевич (статус: 2-ой класс)
Ответ отправлен: 13.02.2008, 10:18 Оценка за ответ: 5
Отвечает: Ahab
Здравствуйте, Александр Павлович!
Для этого в в создаваемой накладной должен быть реквизит типа "Документ" в который при создании накладной будет занесён документ основание (счёт в данном случае)
РасхНакл.ДокСчёт = ТекущийДокумент(); при создании расх. накладной в процедуре ВводНаОсновании().
1С позволяет получать документы, имеющие реквизиты - ссылки на указанный документ
Док = СоздатьОбъект("Документ");
Док.ВыбратьПодчинённыеДокументы(ТекДок);
Пока Док.ПолучитьДокумент() = 1 Цикл
// тут обрабатываем документы в которых есть реквизит ссылка на ТекДок
КонецЦикла;
т.е. при попытке создания расх. накладной ещё раз, нужно будет выбрать документы подчинённые текущему, и при наличии таковых совершить нужные действия :)
Ответ отправил: Ahab (статус: 4-ый класс)
Ответ отправлен: 13.02.2008, 10:23 Оценка за ответ: 5
Отвечает: Крюков Р.А.
Здравствуйте, Александр Павлович!
Воспользуйтесь методом ВыбратьПодчиненныеДокументы
Приложение:
--------- Отвечаю только на вопросы в тему.
Ответ отправил: Крюков Р.А. (статус: 3-ий класс)
Ответ отправлен: 13.02.2008, 10:24 Оценка за ответ: 5
Отвечает: Кулевский Сергей Владимирович
Здравствуйте, Александр Павлович!
Скорее всего запросом и проверять в условии запроса "документОснование" и тип полученной ссылки
Здравствуйте уважаемые эксперты! 7.7 Бухгалтерия. Как можно реализовать контроль уникальности ИНН контрагента, за исключением выборки всех элементов? найти по реквизиту не подходит ведь? т.к. в ИНН ещё и КПП пишется
Отправлен: 13.02.2008, 10:09
Вопрос задала: Darina (статус: Посетитель)
Всего ответов: 5 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Ушаков Михаил Андреевич
Здравствуйте, Darina!
Создайте справочник "ИНН", с длиной кода 12 символов и введите уникальность по коду. Как вариант :с)
Ответ отправил: Ушаков Михаил Андреевич (статус: 2-ой класс)
Ответ отправлен: 13.02.2008, 10:21 Оценка за ответ: 3 Комментарий оценки: Хотелось бы дополнительных изменений в справочнике
Отвечает: DERL.KG
Здравствуйте, Darina!
Только при записи проверять записываемый ИНН на существование...
в процедуре ПриЗаписи()
Ответ отправил: DERL.KG (статус: 8-ой класс)
Ответ отправлен: 13.02.2008, 10:40
Отвечает: Ahab
Здравствуйте, Darina!
Как вариант:
Разделить ИНН и КПП на 2 реквизита.
Реквизиту ИНН установить свойство Сортировка, и при записи отбирать по нему элементы и проверять то что нужно.
Однако замечу что у филиалов тот же ИНН что и у головного офиса, но другой КПП, т.е. уникальности записей в справочнике контрагентов одной проверкой ИНН не добиться.
Ответ отправил: Ahab (статус: 4-ый класс)
Ответ отправлен: 13.02.2008, 10:53
Отвечает: Кулевский Сергей Владимирович
Здравствуйте, Darina!
1) Если у вас представление: "ИНН/КПП"
Разбиратьстроку до символа "/" и искать и сравнивать по полученной подстроке
2) Если есть разделить вообще
Тем же способом,что и 1)
3) Если нет разделителя,
Анализировать подстроку до 13 символа включительно(длинна ИНН)
Отвечает: Полозов Олег aka Asher
Здравствуйте, Darina!
Возможно поможет запрос, что то типа вот такого:
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|ИНН = Справочник.Контрагенты.ИНН;
|Группировка ИНН;
|Условие(ТекИНН в ИНН);
|"//}}ЗАПРОС
Суть - проверить вхождение подстроки ТекИНН в строку ИНН, если условие выполняется, значит такой ИНН уже существует, иначе можно записывать элемент.
Ответ отправил: Полозов Олег aka Asher (статус: Студент)
Ответ отправлен: 14.02.2008, 07:50
Вопрос № 122.936
Вопрос по версии 7.7
1) Какие возможности появляются при снятии флажка "Автоматическое удаление движений" при редактировании свойств вида документов и описания структуры, или почему хорошо или плохо применять в Процедуре ОбработкаПроведения() механизм явного удаления движений документа по регистрам. 2) Как влияет на быстродействие системы (формирование отчетов) размер одной записи регистра при увеличении числа Измерений и Ресурсов, если я использую только 1 измерение - ссылку на элемент
справочника карточки ОС, а в запросе использую ОстатСтоимость = Регистр.ОстаткиОС.ОснОС.Стоимсоть; Конкретнее, меня волнует размер таблицы (DBF и CDX файлов) и в частности размер одной записи: т.е. чем больше у меня будет число измерений и ресурсов, тем длиннее будет запись таблицы и индексный файл, а следовательно и сама таблица (DBF, CDX) - регистр. При каких размерах (в Мб таблицы) регистра вы стали замечать в своей пактике увеличение времени формирования запрос
ов на данных этого регистра
Приложение:
Отправлен: 13.02.2008, 10:38
Вопрос задал: Виталий (статус: 1-ый класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 4)
Отвечает: Сергей Максименко [Elric]
Здравствуйте, Виталий!
Вопросы, я так понимаю, по версии 7.7.
1) Вы получаете преимущества при перепроведении документов. Например, если Вам необходимо перерассчитать себестоимость при списании и нет необходимости при этом трогать взаиморасчеты, то Вы удаляете только движения регистра Партии и формируете их заново, в проводках тоже выбираете какие оставлять и какие заменять. Соответственно, обратная независимость тоже соблюдается. 2) Я не отслеживал размер таблиц и при каком размере начинается
замедление. На мой взгляд, здесь нужен немного иной подход. Вы строите информационную модель. Вам в любом случае нужно хранить необходимую информацию и делать запросы к ней. Следовательно, вопрос лишь в том, какой механизм быстрее, а не с какого этапа будет замедление. Достаточно не хранить избыточную информацию. А запросы к регистрам одни из самых быстрых в системе 1С:Предприятие 7.7.
--------- В творчестве рождается истина
Ответ отправил: Сергей Максименко [Elric] (статус: Профессионал) Украина, Киев Тел.: (044) 22-88-369 Организация: МАКСЕР, "1С:Предприятие" в Киеве Адрес: г. Киев WWW:www.makser.com.ua ---- Ответ отправлен: 14.02.2008, 02:28
Вопрос № 122.939
Здравствуйте! Ответьте, пожалуста, на вопрос по 8.0. Есть СписокЗначений, куда заброшены названия всех документов, как они зыданы в конфигураторе. Пользователю дана возможность выбрать конкретный документ. Как по выбранному документу сделать цыкл? (Проблема в том, что каждый раз можно выбирать разные документы.) Заранее спасибо.
Отправлен: 13.02.2008, 10:58
Вопрос задал: М.Денис (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Яна
Здравствуйте, М.Денис! Есть замечательный оператор Выполнить(<Выражение>); Он Вас спасет. С помощью него можно сначала выбрать все необходимые документы, а потом их перебрать. Нужно написать что-то типа: Выборка=0; Выполнить("Выборка=Документы."+ИмяДокументаВКонфигураторе+".Выбрать()"); Потом можно выборку обычным циклом обходить.
Ответ отправила: Яна (статус: Практикант)
Ответ отправлен: 13.02.2008, 12:55 Оценка за ответ: 5 Комментарий оценки: Большое спасибо!!!
Прекрасно работает!
Просто и красиво.
Вопрос № 122.945
Здравствуйте уважаемые эксперты.
У меня возникла проблемка с ПланомОбмена (вопрос по УПП 8.1). Дело в том что из главного узла хотелось бы передавать не все подряд изменения в базе,а только по определенным подсистемам (т.е. все что касается производства и т.п. переносить, а управление з/п, розничная торговля и т.п. игнорировать).
На закладке "Состав" плана обмена я выбрала необходимые лишние объекты и поставила им "запретить авторегистрацию", выполнила в режиме предприятия запись изменений основной базы и прочитала эти изменения в базе-образе. Но перенеслись вс-таки все изменения.
Я нашла также что в модуле нашего плана обмена отсутствует процедура ПриОтправкеДанныхПодчиненному. Неужели все-таки в ней мне теперь надо прописывать все те объекты, которые не нужно отправлять? Или есть какой-то другой способ? Если даже и необходимо все-таки в ней, то может есть какая-то возможность сослаться на набор объектов, которые я определила на закладке "Состав"?
Отправлен: 13.02.2008, 11:40
Вопрос задала: 2kasandra (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Яна
Здравствуйте, 2kasandra!
1. При отключении авторегистрации, ранее зарегистрированные изменения не удаляются, поэтому они попали в подчиненную базу.
В дальнейшем это вряд ли будет происходить.
2. Регистрация изменений может происходить не только автоматически, а и вручную в модулях передаваемых объектов в процедуре ПередЗаписью, а также методом ЗарегистрироватьИзменения. Очищать таблицу регистрации изменений тоже можно вручную. Почитайте хотя бы синтакс-помощник.
3. Свои желания и действия рекомендую соизмерять со знанием платформы и пониманием механизмов работы обмена.
Например, а что будет в этом случае с регистрами: ПартииТоваровНаСкладах, ТоварыНаСкладах и пр.?
Еще нужно не забывать о последовательностях.
Рекомендую приобрести и почитать книгу "Профессиональная разработка в системе 1С:Предприятие 8" хотя бы главу про обмен.
Ответ отправила: Яна (статус: Практикант)
Ответ отправлен: 13.02.2008, 12:51