Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: Проведение документа программно и "руками"

Всем привет.
У меня есть обработка, которая загружает данные в документ ПКО.
Так вот, наткнулась на странную особенность.
1. Если в момент создания документа создать к нему Контрагента, то документ не проведется программно. Но записать себя даст.
2. Руками проводится без каких-либо ошибок.
3. При повторной загрузки данного документа (контрагент уже в системе есть, он не создается), документ проводится без вопросов.

Блин, что я не так делаю?!
Сравнивала реквизиты документа ДО и ПОСЛЕ проведения - ничего не меняется.
Нашла что ошибка возникает при попытке сделать запись в РегистрНакопления.РасчетыСКлиентами (где именно в коде - пока не нашла, тьма окон открывается). Но опять же, тут же руками проводишь - все отлично.
Ответ: () Да вроде нет. Хотя, надо вот что посмотреть - при проведении документа - не появляется ли новая запись в РС Аналитика учета.
Вопрос: Поле "Приоритет" не заполнено УТ 11 (11.1.10.176)

Здравствуйте господа!
Необходима ваша помощь для решения проблемы с заполнением поля "Приоритет" в документах: заказ поставщику, заказ на перевозку и т.д..Список приоритетов (высокий, средний, низкий) недоступен, как в форме документов, так в справочнике "Приоритеты". Добавлять значения руками в справочник конфигурация не позволяет, хотя кнопка активна.
  • Проблема сохраняется после нескольких обновлении конфигурации.
  • Права администраторские.
  • Опыта по программированию 1С нет.
  • Проверку базы на ошибки делали.
  • Похожие темы на форуме видел, ответа по решению проблемы не найдено.

Вложения:

  • Размер файла:
    29,8 КБ
    Просмотров:
    5
  • Размер файла:
    20,1 КБ
    Просмотров:
    5
Ответ:
Коллеги!

Даю развёрнутый ответ на свой же вопрос и надеюсь это поможет многим сэкономить время.

Для активации функционала справочника "Приоритеты" в УТ 11.1/11.2, с целью его заполнения/изменения, необходимо (см. картинки):
1) Зайти в меню Все функции - Константы;
2) В константах найти и открыть пункт Использовать производство;
3) Установить галку Использовать производство.

Вложения:

  • Размер файла:
    26,8 КБ
    Просмотров:
    1
  • Размер файла:
    30,5 КБ
    Просмотров:
    1
  • Размер файла:
    13,5 КБ
    Просмотров:
    1
Вопрос: "Основание" в УПД

Доброго времени суток, дамы и господа.
Конф УТ 11.3.
Автоматически в поле "Основание" в печатном форме документа УПД подставляется номер заказа клиента.
По договору с клиентом - в данном поле должен быть указан номер договора.
Есть ли в данной конфигирации типовое решение (без изменения конфы), чтобы можно было выбирать, что должно указываться в поле "Основание" печатной формы ТОРГ-12 или УПД ?
Спасибо заранее
--- Объединение сообщений, 2 янв 2017 в 14:49 ---
Вроде разобрался сам )
Тему можно закрыть
Ответ:
Ок, прошу извинить, что сразу не написал.
"Конфигурация УТ 11.3"

Для того, чтобы договор появлялся в основании ПФ УПД или ТОРГ-12 я сделал следующее:
1. Завел сам договор у Контрагента


2. В текстовом поле в карточке указал наименование, как мне хотелось, чтобы оно отображалось в ПФ УПД (ТОРГ-12)




3. В индивидуальном соглашении указал, что "Требуется указание договора..."


4. После подготовки реализации на вкладке "Дополнительно" по ссылке: "Реквизиты печати ТОРГ12/Акт на передачу прав" - выбрал в основании "договор" вместо заказа клиента.

PS^ соглашусь, что это долго, но руками в этом случае править ПФ не нужно.
Вопрос: v7: Как быстро добавить реквизит в "большой" справочник?

Добрый день!
Подскажите, кто знает...
Вводная. База обычная, файловая, *.dbf,*.cdx. Не типовая, на основе ТиС. Не сказать, что-бы сильно большая - в разных базах от 50 до 100 тысяч наименований товаров. Размер dbf-ки справочника "Номенклатура" 15 - 30 мегабайт. Необходимо добавить один реквизит, тип "число", длиной 1. Это просто флажок, "галочка". Так вот, сохранение изменений базы после добавления реквизита в конфигураторе растягивается на многие часы!

Решил найти возможность ускорить процесс, естественно, не типовыми средствами. Что сделал:
1. Удалил индексы, перенес файл справочника в отдельную папку.
2. В конфигураторе добавил необходимый реквизит, запустил базу, файл создался новый, пустой(мгновенно).
3. Опять снес индексы, перенес новый, пустой файл в отдельную папку.
4. С помощью редактора "sergdbf"(первое, что попалось под руку, умеющее добавлять колонки), добавил поле в исходную дбф-ку(мгновенно). Там-же, заполнил эту новую колонку значениями "0"(тоже мгновенно).
5. Вернул файл на место, запустил базу с восстановлением индексов.

Пока - все отлично, база работает, реквизит добавлен, "галочка" ставится/снимается, сохраняется. Казалось-бы УРА, цель достигнута, на все про все 10 минут с перекурами и все работает!
НО!!! Для контроля запускаю ТиИ, и получаю такую картинку:



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

PS Не добавлять реквизит в справочник, а использовать другие механизмы, например через подчиненные, типа "свойства", не предлагать. Надо так, и все тут! :-) Конфа не типовая, и ни кем, кроме меня не поддерживается.
Ответ: +()И еще штуки три реквизита с признаком "Сортировка", не мои, но и не совсем типовые - досталось "тяжкое наследство" от предыдущих, допиливавших эту конфу до меня программеров... Так, что вариант с созданием пустой дбфки и загрузки в нее данных сторонним редактором на текущий момент проще и быстрее получается.
Вопрос: Запрет изменения реквизита "Ответственный"

День добрый!
Имеем: Бух 2.0.66.62, платформа 8.3.12.1529
Есть подписка "ПередЗаписьюДокумента..." (событие - ПередЗаписью).
Сам реквизит "ответственный" закрыт (совсем, полностью).
Краткое пояснение: руками в док-те никак нельзя поправить ответственного. Всегда будет (ответственным) тот, кто последний записал док-т.
Вопрос: есть вероятность того, что док-т был проведен другим пользователем, а ответственный не изменился? Например, отчеты какие-нибудь.
Спасибо.
PS Я тут отъеду на полчаса. Но ответы жду. Еще раз спасибо.
Ответ: () не видя код - это как кот Шредингера, есть вероятность всего пока оно неизвестно. Если при каждой записи явно ставится новый ответственный - то не могу представить сценарий при котором реквизит не поменяется, кроме обмена
Вопрос: В справочник ФизическиеЛица добавить ДополнительныеРеквизиты Документ

Добрый день!
Как программно в справочник ФизическиеЛица добавить Документ (в ДополнительныеРеквизиты).
Конфигурация "Управление небольшой фирмой, редакция 1.4"

Пишу:
Контрагенты = Справочники.ФизическиеЛица;
тек_эл = Контрагенты.НайтиПоНаименованию("Филькин Михаил");
Если тек_эл = Контрагенты.ПустаяСсылка() Тогда
сообщить("не найден");
возврат;
КонецЕсли;

Об = тек_эл.ПолучитьОбъект();
ДР = Об.ДополнительныеРеквизиты.Добавить();
ДР.Свойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Заголовок", истина);
ДР.Значение = тек_эл.ПолучитьОбъект();
Об.Записать();

Ничего не происходит!
Ответ:
так что нужно? документ создать или готовый документ в допреквизиты добавить?
пользователь руками этот документ в допреквизиты может добавить?
Вопрос: Проблема с открытием формы списка документов.

В комплексной, той которая второй редакции, есть документ "Пересчет товаров". У документа есть форма списка, в которой устанавливается отбор по складу.
Замечательно. До недавнего времени не было необходимости ограничений доступа по складам. Соответственно у пользователя при открытии формы восстанавливалось значение отбора по складу, который у него был указан при закрытии формы. Но потом включили ограничение доступа по складам, и доступ к этому складу был ограничен. Теперь при попытке открытия формы списка документов выдается ошибка. Ошибка возникает при попытке получения значения реквизита склада, к которому у пользователя ограничен доступ. Если смотреть в отладчике - это видно. Но возникает вопрос. Через отладчик можно очистить значение, например, установить пустую ссылку. Тогда проверка проходит без ошибок и форма открывается. Но это если "под рукой" есть тот у кого есть доступ к конфигуратору и отладчику и есть соответствующие права. А что делать есть "под рукой" такого человека нет? Т.е. как выполнить очистку значений которые фиксируются при закрытии формы, и потом восстанавливаются при ее открытии из режима предприятия? Например пользователем с полными правами. Вопрос насущный, потому что сейчас настраиваются ограничения доступа к данным и в дальнейшем таких ситуаций предвидится не мало.
Кто-сталкивался с подобным?
Обработки из пакета инструмента разработчика БСП не помогают. Конфигурация типовая, запрет на изменение стоит.
Ответ: () Ну я бы не сказал что упорствую. Однако очистка кэша пользователя помогла. Хотя я не сильно на это надеялся.

Если следовать документации то
"Платформа использует следующие хранилища:
? Системное хранилище – в данное хранилище система сохраняет все возможные настройки, которые нужны для работы платформы. К данным настройкам относятся настройки размеров форм, настройки печати табличного документа и т. п. Полный перечень настроек, сохраняемых в системном хранилище, см. здесь. В качестве системного хранилища настроек всегда используется стандартное хранилище настроек. То есть данные системного хранилища всегда сохраняются в системной таблице информационной базы."
В перечне настроек, сохраняемых в системном хранилище присутствует
"Настройка: значения полей формы при закрытии
? Ключ объекта – является строковым значением, состоящим из полного имени формы и текста /ТекущиеДанные (/CurrentData)."

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

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

Разбираться почему помогла очистка кэша, при условии что настройки должны храниться в системном хранилище - сейчас нет времени.

Всем спасибо.

PS. Персонально для rudnitskij - "не судите, да не судимы будете" (с)
Вопрос: Не могу найти программный код кнопки

Добрый день. Надо перенести остатки из 7.7 в БП 3,0 УФ. Дошла до ОС. Когда в режиме предприятия нажимаю кнопку "Добавить" (см 2), открывается формочка. А как это дело вызывается в конфигураторе - понять не могу (см 1).
Конфигурация БП 3.0.40.42. Документ ВводОстатков, его форма - ФормаОсновныеСредства
Ответ:
Ну так это кнопка командной панели табличной части.. смотрите методы табличной части.. ПередНачаломДобавления(написал от руки как то так называется)
Вопрос: не могу изменить строки в документе

Задача:
По некоторому списку нужно изменить существующий документ "Оприходование товаров" . А именно добавить товары, которые есть в моем списке и нет в оприходовании и изменить количество, если строка есть, но отличается от значения в списке
Что делаю:

Оприходование = ДокОприходование.ПолучитьОбъект();

Для каждого Строка Из МойСписок Цикл//На самом деле это ТЧ документа

 Номенклатура = Строка.Номенклатура;
        Отбор = Новый Структура();
        Отбор.Вставить("Номенклатура", Номенклатура);
        НайденныеСтроки = Оприходование.Товары.НайтиСтроки(Отбор);

Если НайденныеСтроки.Количество() = 0 Тогда
  //Не нашли. добавляем. тут все отрабатывает

Иначе

// нашли и пытаемся править

//А оно никак :(
            Для каждого ТекСтрока Из НайденныеСтроки Цикл
            
                Если ТекСтрока.Количество <> ВводимыйОстаток Тогда
                
                    Сообщить("Изменили " + Номенклатура);
                
                КонецЕсли; 
                
                ТекСтрока.Количество = ВводимыйОстаток;
                Сумма                 = ТекСтрока.Цена * ВводимыйОстаток;
                ТекСтрока.Сумма     = Сумма;
                ТекСтрока.СуммаРегл = Сумма;
                ТекСтрока.СуммаНУ     = Сумма;
            
            КонецЦикла; 
КонецЕсли;
КонецЦикла;
Оприходование.Записать();

Сорри за форматирование. Вставил как мог
Ответ: Должно работать. Отладчик в руки
Вопрос: Документ "Отсутствие с сохранением оплаты"

Добрый день, Коллеги.
Помогите, пожалуйста, понять это ошибка релиза или у нас "руки кривые" :).
Платформа 1С:Предприятие 8.3 (8.3.8.2197) ЗУП КОРП 3.1.2.238.
При расчете суммы оплаты за вынужденный ВНУТРИСМЕННЫЙ простой в документе "Отсутствие с сохранением оплаты" программа на закладке "Начислено" в колонке "отработано (оплачено) "указывает 11,5 часов, вместо 0,5 часа простоя. Соответсвенно и результат "Доплаты за недоработки при суммированном учете рабочего времени" становиться за 11,5 часов , вместо оплаты за 0,5 часа.
В чем причина, помогите понять.
Ответ: up.
Может кто протестит у себя? У Вас также?