8.х Создание своей конфигурации (новичок)

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем bizisoft, 28 июн 2012.

  1. TopicStarter Overlay
    bizisoft
    Offline

    bizisoft

    Регистрация:
    28 июн 2012
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    Здраствуйте.
    Начал изучать Платформу 1С v8.2 и конфигурирование в ней. До этого разрабатывал программы-базы данных в связке С++Builder и InterBase.

    Для начала решил, перед тем как лезть в дебри (готовую конфигурацию Управление Торговлей) создам свою упрощенную конфигурацию для формирования заказов на товар у поставщиков (например Запчастей). А после того как более менее стану разбираться во всей этой кухне полезу в УТ.

    Для начала поставил задачу.
    Конфигурация будет состоять из:
    Справочники:
    • Номенклатура
    • Поставщики
    • Статусы
    • в дальнейшем может еще добавятся
    Подсистемы:
    • Предварительные заказы
    • Заказы
    • Проформы
    • Приходы
    • Другое (справочники и т.п.)
    Документы:
    • Предварительные заказы (ПЗ) - пользователь формирует общий документ предварительного заказа, оперирую номенклатурой, остатками на складе(ах), количеством деталей участвующих в других заказах, количеством пришедших деталей но еще не заприходованных, ценой поставщиков. Т.О. просмотрев эти данные пользователь определяет какое количество той или иной запчасти заказать у каждого поставщика. т.е. в ПЗ может быть одна и таже запчасть с любым количеством, но у разных поставщиков (количество поставщиков не ограничено, но на самом деле будет не более 10).
    • Заказы (З) - документ Заказы формируються на основании предварительного заказа, посредством разделения по поставщиками, т.е. Из одного предварительного заказа будет получаться столько заказов - сколько поставщиков участвовало в ПЗ.
    • Проформы - документ Проформы это утвержденный поставщиком перечень запчастей и их количества (то что может предоставить поставщик на текущий момент), который формировался на основании одного из Заказа.
    • Приходы - документ формируется на основании проформы полученной от поставщика после провоерки соответствия пришедшего товара (соответствие фактического прихода товара с проформой, а именно заявленные запчасти и заявленное количество)
    P.S. Документы возможно будут иметь статусы (Корзина - стадия формирования, В работе - отправлен на согласование поставщику, Завершен - заказ выполнен и отправлен к нам). В связи с этим возможно потребуется правочник Статусы

    Этап разработки:

    Уже создал:
    • Справочники: Номенклатура, Поставщики, Статусы.
    • Документы: Предварительные заказы, Заказы
    • Для документа ПЗ организовал добавление запчастей из номенклатуры.
    И теперь возникло море непонятных вещей, на которые пока в литературе найти ответы не получилось, может их там и нет, а может и я смотрю в книгу - вижу ф....

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

    Итак начну.

    1) Как в справочнике Номенклатура сделать первичный/уникальны ключь на нужное мне поле (Например: НомерПоКаталогу, чтобы в номенклатуре невозможно было внести более одной детали с одинаковым номером?

    2) Как создавать первичные или уникальные ключи (Например в документе ПЗ первичный или уникальный ключь требуется составной - НомерДетали+Поставщик)?

    3) Как правильно осуществить подбор запчастей из номенклатуры не закрывая ее для целого списка запчастей. (Например: в документе нажимаей Подбор, открывается окно с номенклатурой, внизу окна например таблица подбора, теперь в таблице номенклатура двойным кликом или по клавише Enter позиция добавляется в таблицу подбора с предварительным запросом количества.).

    P.S. У меня получилось только так: Нажимаю подбор - в табличной части появляется строка, затем в этой строке надо нажать кнопку выбора "..." и только после того открывается номенклатура - выбирается нужная позиция, потом кнопка Выбрать, потом в следующей ячейки нужно указать количество. Как-то не совсем "юзабилити" получается - сильно много телодвижений для пользователя. Это еще ничего если нужно 5 - 10 позицый набить, а если 1000 - 5000, то пользователь будет очень огорчен :vis: :moderator: :topor: и прийдет ко мне :trax-tibidox:.

    4) Можно-ли вышеописанное выполнить сразу для нескольких поставщиков (Например: Выбрали запчасть, 2-клика/Enter, ввод количества (последоательно для каждого поставщика) или чтобы показывался список поставщиков, а напротив каждого проставлять количество, после чего результат помещается в таблицу подбора.

    НомерДетали | Поставщик | Кол-во |
    965487400 | Поставщик 1 | 2 |
    965487400 | Поставщик 2 | 15 |
    546548475 | Поставщик 2 | 24 |
    ...

    По закрытию окна (кнопка ОК или Отправить) подбора по каталогу содержимое таблицы подбора переносится в документ ПЗ
    При этом схожие позиции обединялись, т.е суммировалось количество позиций по первичному/Уникальному ключу НомерДетали+Поставщик.

    Как все это сделать в 1С я не знаю, т.к. не ясен механизм работы.

    Если что сильно не пинайте стаж работы (изучения) в 1С всего 5 дней.

    Большое спасибо.
    С Уважением, Дмитрий.
  2. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    1) 1с будет контролировать уникальность ключа (поле код) если стоит соответствующая галочка в справочнике
    2) как вариант - при заполнении соответствующих полей в документе делать проверку на то, был ли уже документ с такими параметрами или нет
    про подбор и передачу параметров между формами в 8.2. пока не копала (сама в процессе изучения возможностей 8.2 после 8.1)
  3. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.735
    Симпатии:
    508
    Баллы:
    204
    По правилам форума - один вопрос одна тема. Это отступление:))))
    1. Приобретите конфу для обучения программирования, отпадут сразу 100 вопросов по поводу как это, и как то.
    2. Вы тут выложили почти ТЗ :)))))))), этого не стоило бы делать.
    3. При опыте программирования в 1С 5 дней - начните с изучения литературы по 1С, иначе вам тут никто не будет объяснять чем отличается РС от РН.
    4. Ну и отвечу на ваш первый вопрос. Можно пойти следующим образом. Заходим в конфу, лезем в необходимый справочник (Номенклатура), на закладке данные жмем - стандартные реквизиты, жмакаем по полю Код - пишем синоним - НомерПоКаталогу. Это поле у вас будет отображаться вместо наименования - код. Т.о. система вам не позволит записать два элемента с одинаковым НомерПоКаталогу.
  4. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    а книги можно найти в соответствющей ветке здесь на форуме...
  5. TopicStarter Overlay
    bizisoft
    Offline

    bizisoft

    Регистрация:
    28 июн 2012
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    Спасибо большое за направление моих дальнейших действий.
    По поводу ТЗ - это не совсем так, можно сказать это мысли в слух, как бы зафиксировал свою цель, чтобы ничего не забыть ненароком :)

    А вот за ответ на первый вопрос отдельное спасибо, т.к. я думал, что это чисто системный реквизит и его по своиму усмотрению использовать нельзя.

    Можно-ли как-то использовать составные первичные ключи - например по двум полям (Например: НомерПоКаталогу + Поставщик) [в Interbase/Firebird да и Access - это делать можно, хоть несколько полей обединять в первичный или уникальный ключь (составной первичный / составной уникальный)]?

    Т.е. непосредственно в табличной части документа автоматической проверки уникальности как в справочниках нет?
    Я имею ввиду, что если самому не предусмотреть процедуру или функцию, которая просматривала документ перед добавлением позиции (например: "28113-2Е000" "Поставщик№1") и проверяла наличие записи с такими же значениями, то система это пропустит и в документе будет две одинаковые записи, но допустим с разным количеством запчастей.
    Но тогда при большом количестве записей в документе, эта процедура будет сильно тормозить при каждом проходе по списку, что не есть гуд.

    Большое Вам alexburn и Tiger86 спасибо.
    С Уважением, Дмитрий.
  6. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    1. спасибо выражается кнопочкой зелененькой!
    2. составной ключ как в субд тут не совсем катит, хотя ручками допилить можно все. В табличной части проверку сделать не так сложно, да и отработает она достаточно быстро. Возможно в 8.2. предусмотрели это, но в 8.1. не было.
    3. Контроль уникальности выставляется в справочниках только на код. Хотя предопределены 2 реквизита: в справочнике - код и наименование, в документе - номер документа и дата.
  7. Колертс
    Offline

    Колертс Опытный в 1С

    Регистрация:
    25 июн 2012
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    Кстати, как человек который начинал изучать 1С, тоже, с самописных конфигураций, советую не страдать ерундой, а изучить типовые конфигурации, чтобы не выдумывать велосипед с квадратными колесами. (как выше советовали - конфигурацию для обучения)
    А то действительно годы потраченные впустую, если вы и так уже программист.
  8. kotlovD
    Offline

    kotlovD Опытный в 1С

    Регистрация:
    16 фев 2011
    Сообщения:
    718
    Симпатии:
    0
    Баллы:
    26
    Скачиваете книжку 1С 8.2 Основные объекты метаданных - за день читаете и выполняете. Все терь Вы программист 1С)))

Поделиться этой страницей