Вопрос № 60222: Уважаемые эксперты! Помогите новичку разобраться. 1С:Предприятие 8.0. Есть справочники: КассоваяТехника, Контрагенты. Есть документы: ПостановкаНаУчет, СнятиеСУчета, СменаВладельца. Каждая единица КассовойТехники одновременно может быть закреплена то...Вопрос № 60295: Доброго времени суток! Небольшой вопросик. Имеется 2 справочника. Первый:Справочник.Получатели(одноуровневый,без групп-только обычные записи) и Второй:Справочник.Платежи.
Второй справочник имеет 3 уровня, причем первые 2 уровня состоят только из груп...Вопрос № 60442: Я сталкнулся с такой проблемай: Назначил операторам права, чтобы они не могли проводить документы задним числом, а на сам документ, с которым и произошла проблема назначил такие права: "Чтение, Ввод нового, Пометка на удаление, снятие пометки на...
Вопрос № 60.222
Уважаемые эксперты! Помогите новичку разобраться. 1С:Предприятие 8.0. Есть справочники: КассоваяТехника, Контрагенты. Есть документы: ПостановкаНаУчет, СнятиеСУчета, СменаВладельца. Каждая единица КассовойТехники одновременно может быть закреплена только за одним Контрагентом. Какие регистры и с какими измерениями создать, чтобы на любой день (периодичнось учета) получить сколько и каких ККМ закреплено за контрагентом. Важно получение движений конкретной ККМ (по зав.номеру).
Отвечает: Шальков Павел Владимирович
Здравствуйте, KripWorland!
Элементарно, это будет регистр сведений: измерение - контрагент, ресурс - ккм, ну и соответственно периодичность день или как вам надо. И все - этого достаточно. Потом вы сможете получить любой анализ по данным этого регистра. Удачи!
Ответ отправил: Шальков Павел Владимирович (статус: 8-ой класс)
Ответ отправлен: 26.10.2006, 13:00 Оценка за ответ: 5 Комментарий оценки: Большое спасибо за оперативный ответ. А нельзя ли поподробнее по поводу регистров (отличие, примеры использования), а то я еще плохо их понимаю...
Отвечает: Лазурко Владимир
Здравствуйте, KripWorland!
Контрагентам отдаёте ККМ? Не лучше ли Сотрудникам? и соответственно в конфигурации их связывать со справочником Сотрудники?
Указанные Вами документы существуют? Если существуют и функционируют, то единственное, что нужно сделать - элементу справочника КассоваяТехника добавить реквизит "ОтветственноеЛицо" и в документах ПостановкаНаУчёт и СменаВладельца при их проведении изменять этот реквизит на новый, и проверять, чтобы КассовойТехнике не присваивали нового хозяина
По сути, это как в Управлении Торговлей - у Вас вместо СКЛАДА используется КОНТРАГЕНТ, а вместо НОМЕНКЛАТУРЫ используется КАССОВАЯТЕХНИКА, c той лишь разницей, что один "товар" (ККМ) может храниться только на одном "складе" (Контрагент). Документ СменаВладельца - это ПеремещениеМеждуСкладми, СнятиеСУчета - это РасходнаяНакладная и ПостановкаНаУчёт - это ПриходнаяНакладная.
Зачем снова изобретать колесо? Я взял методичку и нарисовал ответ на Ваш вопрос в новой конфигурации. Если интересует, могу выслать. Также эту методичку можно скачать c FTP.RUSFAQ.RU в разделе документация/1С. Называется 1C_V8_КУРС_Основные_Объекты_v8_01_02_(GROOVY).rar
О регистрах: регистр сведений ОтветственныеЗаККМ периодический c периодом секунды, подчинён регистратору, регистраторы - указанные документы. Измерение ККМ тип СправочникССылка.КАссоваяТехника. Ресурс Контрагент тип СправочникСсылка.Контрагенты.
У справочника КассоваяТехника есть реквизит типа СправочникСсылка.Контрагенты, куда и записывают документы последнего Контрагента. Если у ККМ уже есть владелец - предупреждение и отказ проведения.
Успехов и процветания!
Ответ отправил: Лазурко Владимир (статус: 4-ый класс)
Ответ отправлен: 26.10.2006, 20:15 Оценка за ответ: 4 Комментарий оценки: ККМ у контрагентов. Каждый месяц они платят за обслуживание. Мне нужно знать, у какой ККМ близка к завершению ЭКЛЗ или срок эксплуатации, где не наклеены голограммы и т.д. Учет уже велся в самописной конфиге, но чисто справочниками, в результате никак отследить историю перемещений ККМ и информацию о списанных кассах... Конечно похоже на склад, но есть и отличия
- по моему это называется артикулярный учет...
Отвечает: Ovr1970
Здравствуйте, KripWorland!
Нужно создать Регистр сведений, периодический, с измерением КассоваяТехника и Значением "Владелец"
Ответ отправил: Ovr1970 (статус: Студент)
Ответ отправлен: 27.10.2006, 16:02 Оценка за ответ: 5 Комментарий оценки: Благодарю
Вопрос № 60.295
Доброго времени суток! Небольшой вопросик. Имеется 2 справочника. Первый:Справочник.Получатели(одноуровневый,без групп-только обычные записи) и Второй:Справочник.Платежи. Второй справочник имеет 3 уровня, причем первые 2 уровня состоят только из групп! Моя процедурка шерстит эти справочники и сверяет названия первого справочника с названием группы первого уровня второго справочника и причем мне нужно чтобы сравнение шло только на первом(!) уровне второго справочника, но как я не бился у меня нифига не выходит.
При выборе элементов второго справочника выбор идет и на первом уровне и на втором и на третьем. В результате стирается не то что нужно. Ребят, помогите! а то я уже заколебался.
Приложение:
Отправлен: 26.10.2006, 22:11
Вопрос задал: Endru (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Elric
Здравствуйте, Endru!
Не знаю каким образом и зачем Вы прислали код в формате Unicode, но в результате Приложение нечитабельно абсолютно. Что не помешает мне ответить на вопрос, хоть и без указание конкретных строчек кода.
При поиске элемента просто проверяйте уровень. У многоуровневого справочника (Платежи) он должен быть равен нулю (первый уровень справочника).
Что-то вроде следующего:
Если Спр.Уровень()>0 Тогда
Продолжить; // т.е. действие не выполнять
КонецЕсли;
// далее -- действия которые надо выполнять, т.е. проверку на совпадения имени и т.д.
--------- Мирный атом в КАЖДЫЙ дом!
Ответ отправил: Elric (статус: Практикант)
Ответ отправлен: 27.10.2006, 02:42 Оценка за ответ: 4 Комментарий оценки: Ивзиняюсь что получилось в таком виде, но я копировал из блокнота, а то что дошло в таком виде, то фиг знает. Но если открыть в html, который прилагается к вопросу, то все прекрасно читается. Поправочки:уровень начинается не с нуля, а с единицы, что впринципе вполне логично. Спасибо за ответ, с ситуацией справился.
Отвечает: Ovr1970
Здравствуйте, Endru!
Во первых СпрПл.ВыборГруппы(0); не при чем, это изменяет интерактивное взаимодействие.
Во вторых, когда Вы получили элемент первого уровня, почему Вы его не проверили на совпадение?
Вместо этого Вы проверяете следующий элемент, который скорее всего второго уровня.
Вместо
Пока СпрПол.ПолучитьЭлемент()=1 Цикл
Если Строка(СокрЛП(СпрПл.Наименование))=Строка(СокрЛП(СпрПол.Наименование)) Тогда
Флаг2=1;
Прервать;
КонецЕсли;
КонецЦикла;
Нужно
Если Строка(СокрЛП(СпрПл.Наименование))=Строка(СокрЛП(СпрПол.Наименование)) Тогда
Флаг2=1;
КонецЕсли;
В третьих
Этот цикл все равно не приведет к требуемому результату, если обе выборки не будут олинаково упорядочены. Т.е. Оба справочника нужно упорядочить по наименованию
(спрЛП.ПорядокНаименований() и СпрПол.ПорядокНаименований() )
Ответ отправил: Ovr1970 (статус: Студент)
Ответ отправлен: 27.10.2006, 16:13 Оценка за ответ: 5
Вопрос № 60.442
Я сталкнулся с такой проблемай: Назначил операторам права, чтобы они не могли проводить документы задним числом, а на сам документ, с которым и произошла проблема назначил такие права: "Чтение, Ввод нового, Пометка на удаление, снятие пометки на удаление, Корректировка, Выбор, Просмотр подчиненных документов, Проведение документа", остальные галочки не проставил, т.к. нашим операторам запрещено проводить документы задним числом и изменять проведенные документы.
Получилась такая ситуация, оператор приходовал товар, я попросил выдти всех из 1С, они записал документ Поступление ТМЦ (купля-продажа) после того, как я запустил его в 1С он не может провести этот документ, хотя он просто записал его, не проводил, вышел и включил 1С снова.
Думаю, что я где-то что-то у пустил при установки прав пользователям-операторам..
Отвечает: Зайцев Александр
Здравствуйте, Терсков Алексей Николаевич!
Проведение задним числом - это проведение документа, который находится до точки актуальности. У меня была похожая проблема с операторами, я решил ее так:
Разрешил пользователям проведение задним числом и завел еще одну константу ДатаЗапретаОператорам, которая автоматически выставляется при входе любого оператора в систему, и ввел дополнительную проверку. Если пользователь - оператор, то система не дает проводить. Если что-то не понятно - сигнальте на пейджер разьясню
Ответ отправил: Зайцев Александр (статус: 8-ой класс)
Ответ отправлен: 28.10.2006, 10:32
Отвечает: Elric
Здравствуйте, Терсков Алексей Николаевич!
По-моему, лучше просто поставить запрет на ПЕРЕпроведение для оператора, без всяких констант. Программно, не при помощи прав. А право на "проведение задним числом" оставить (разрешить). Определить, что это именно оператор, можно посредством системной функции НазваниеНабораПрав().
--------- Мирный атом в КАЖДЫЙ дом!
Ответ отправил: Elric (статус: Практикант)
Ответ отправлен: 28.10.2006, 12:03 Оценка за ответ: 5 Комментарий оценки: А если я разрешу изменение проведенных документов, то соответственно они и смогут изменить документы созданные ранее?, т.е. например месячной давности? Что из себя представляет закрытие периода и открытие, если период открыт в начале месяцап и закрыт в конце, то операторы в прошлом месяце ничего не смогут поменять уже, т.е. перепровести документ, создать
или внести изменения в уже проведенный?