.....беспокоит один вопрос что после ID 999999 ?
Последние темы на форумах VOGBIT
|
19.03.2014 18:45:05
Большое всем СПАСИБО кнопка получилась отличная (норма матер,и сварку и краску считает!!! все как и задумал)
.....беспокоит один вопрос что после ID 999999 ? |
|
|
|
|
|
19.03.2014 19:54:17
![]() |
|||
|
|
|
|
20.03.2014 15:08:45
тогда поместится все...
|
|
|
|
|
|
18.04.2014 17:06:16
Берём папки:
Создаём новую:
Помещаем номенклатуру в папку:
|
|||||||
|
|
|
|
08.09.2014 08:45:00
Здравствуйте , ув. разработчики.
Интересует вопрос , как сделать кнопку , нажатие на которую открывало бы окно создания новой папки , после создавалась эта папка ( с название которое ввели ) и в ней же находилось две дочерних папки ( к примеру с названиями Узлы и Детали ) . И скажите пожалуйста как устанавливаются эти .dll файлы ( кинул в директорию программы, но кнопка не появилась )
Изменено: - 08.09.2014 10:22:43
ООО "Нефтезаводмонтаж" , г.Волгоград
|
|
|
|
|
|
08.09.2014 17:27:50
Всё тоже самое: создаёте папку
|
|||||||||||
|
|
|
|
14.09.2014 18:30:57
Спасибо, Сергей
ООО "Нефтезаводмонтаж" , г.Волгоград
|
|
|
|
|
|
14.09.2014 18:36:42
Если я правильно понял, то код создания двух папок будет следующим ... в комментарий почему то не получается добавить его. Парсер не пропускает ...
Изменено: - 14.09.2014 18:37:21
ООО "Нефтезаводмонтаж" , г.Волгоград
|
|
|
|
|
|
15.09.2014 01:23:32
Посмотрите сообщение №43 в этой теме. Там практически готовая функция для создания папок по названию и родителю. |
|||||
|
|
|
|
18.09.2019 18:18:43
Сергей! Сделал плагин, который загружает номенклатуру в Вогбит из файла .csv. Загрузку проходит нормально, но при повторной загрузке вылетает ошибка, что такая номенклатура есть. Пытаюсь организовать поиск в справочнике ранее загруженной номенклатуры, но что-то делаю не так. Подскажите где ошибка:
try { using (StreamReader sr = new StreamReader(@"D:\nmkFile.csv", Encoding.Default)) { string[] headers = sr.ReadLine().Split('\t'); var folderId = ((IPlugInForm)activeForm).FormParams["FolderId"].AsLongInt; var nmks = ExtApp.Application.General.Nomenclature(folderId, CatalogOptions.None); foreach (string header in headers) { string strk = ""; while (!sr.EndOfStream) { string[] rows = sr.ReadLine().Split('\t'); /////Здесь бы нужен поиск по QuickSearch и в случае успеха номенклатуру не грузить var searchResult = nmks.QuickSearch(new[] { "Name" }, new object[] { "ObjectNomenclature" }); ((ObjectNomenclature)searchResult[0]).NomenclatureValue; //////////////////////////////////////////////////////////// var nmk = nmks.AddNew(); for (int i = 0; i < headers.Length; i++) { if (i == 0 && strk != rows[i]) { strk = rows[i]; //Здесь можно добавить заказ } if (i == 2) { nmk.Notation.Value = rows[i]; } if (i == 1) { nmk.Name.Value = rows[i]; } } nmk.Save(); } } } } finally { //activeForm.Cancel(); } |
|
|
|
|
|
18.09.2019 21:21:02
1. Обозначение номенклатуры должно быть уникально в рамках всей базы. Наименования могут быть одинаковыми. Соответственно, в поиске надо проверять Notation. Либо по наименованию(в случае если обозначение отсутствует). Это зависит от того, как у вас номенклатурный справочник ведётся. Ещё может быть случай, что обозначение совпадает, а наименование - нет.
2. В приведённом коде поиск производится в конкретной папке. Не факт, что уже существующая номенклатура лежит в этой папке. В общем случае поиск номенклатуры по обозначению может выглядеть так:
Есть ещё вариант поиска объекта по обозначению. Надо только тип объекта указать.
Ну и можно ещё обрабатывать исключение при сохранении номенклатуры
|
|||||||
|
|
|
|
20.09.2019 09:12:39
Реализовал первый вариант поиска, но если во втором варианте можно делать поиск объекта по обозначению любого типа, то где здесь указать тип объекта?
ExtApp.Application.General.GetObjectByNotation() Потребуется поиск папок, заказов на производство, параметров. Второй вариант подойдет для этих целей? Посмотрел, также базовые объекты по F11, но поле типа объекта там пустое и не очень понятно где ставить тип объекта, как он выглядит. Да и кнопку настройки не вижу в меню, чтобы сконфигурировать интерфейс. |
|
|
|
|
|
20.09.2019 16:27:24
|
|||||||||||
|
|
|
|
27.09.2019 13:49:48
Сергей! В общем загрузка номенклатуры и поиск ее для проверки получился. Но грузить и искать номенклатуру нужно будет с учетом папок и вместе с заказами на производство. Кроме того к каждой номенклатуре должен быть прикреплен техпроцесс, который должен быть создан сам заранее и все материалы загружены заранее, а потом должен как-то сопоставлен с номенклатурой изделия. Для таких загрузок с иерархией был бы удобен формат json. В литературе пишут, что должна быть подключена дополнительная библиотека. Подскажите какая лучше подойдет для Вогбита, или ели есть выложите пример загрузки-выгрузки данных в этом формате.
|
|
|
|
|
|
27.09.2019 15:41:00
Тут дело не в формате. А в том, что номенклатурная позиция одна отдельно взятая и данные для производства - это как-бы небо и земля. Номенклатура - тут всё элементарно. Запись одна в справочнике. Поискали, есть - хорошо, нет - добавили запись новую. Всё, конец. А если взять, например, техпроцесс, то это совсем другого порядка песня. Это коллекция, в ней компоненты, параметры со значениями, связанные объекты с определёнными типами связей, связанные объекты с тем, на основе чего созданы компоненты. И это только одна деталь. В заказе в вашем случае таких десятки. + есть узлы. Есть спецификации "конструкторские" и "заказные". Есть связи между "операциями". И всё это вместе представляет собой данные, чтобы потом одной кнопкой в производстве получались нужные задания, в разных случаях они правильно обрабатывались, где нужно работы объединялись в одно задание, где не нужно, чтобы не объединялись, чтобы по мере выполнения одной группы заданий предлагалась для выдачи следующая группа и т.д. В общем, такую конструкцию из данных правильно соорудить - это совсем не одну запись найти - добавить... В самом VOGBIT есть плагины специальные, в них прописана логика на всевозможные случаи. Как когда что заполнять, что с чем связывать. Благодаря этому для пользователя всё легко и просто. Мышкой перетащил строчку из одного окошка в другое, и всё само создалось, связалось, думать не нужно, как там что внутри устроено. А "генератор" так и вообще при определённой настойке сам, автоматически, всё это создаёт, заполняет, находит что нужно и использует, что нужно создаёт... Эта часть программы внутри совсем не тривиальная. Так вот. Если вы хотите зачем-то это всё дело (не только номенклатуру, но и спецификации, техпроцессы) из VOGBIT читать, то это, в общем, не сложно. Берите, считывайте, сохраняйте в файл. Какого хотите формата. Если же вы хотите это снаружи в VOGBIT зачем-то создавать, то тут, мягко говоря, вам работы надолго хватит. Очень надолго... И, главное, непонятно зачем. Намного проще в самом VOGBIT создавать то, что ему нужно для работы (техпроцессы те же). Он прекрасно это умеет. Это намного легче будет, чем программно снаружи пытаться соорудить то же самое в базе. Быстрее и легче просто будет эти техпроцессы в самом VOGBIT и сделать. Даже вручную, думаю. Не говоря уже о том, если "генератором". В общем смысл в вашем конкретном случае создавать ТП в VOGBIT программой снаружи мне просто не понятен. Но так-то дело ваше... Хотите, есть время и желание - изучайте, создавайте. Ничего невозможного нет. Просто придётся изучать, как это всё устроено, писать кучу кода, тестировать это потом всё на пригодность. Хотите? Занимайтесь)) Изучайте. Начать можно... А формат файла какой - json, xml, самодельный какой-нибудь - это 25-й вопрос в данном случае. Какая разница из какого формата данные читать (писать в него). Вопрос в том, что и как делать с тем, что считал из файла - вот где тут 99 процентов, собственно, кроется. А формат файла то без разницы какой, по большому счёту. |
|||
|
|
|
|
27.09.2019 16:33:40
В .NET есть "свои" средства для работы с JSON. Из сторонних можно ньютонсофт посмотреть. Вогбиту без разницы. Создание\изменение объектов всё равно придётся ручками прописывать. Ну и как сказано выше, цель всего этого мероприятия не очень понятна.
|
|
|
|
|
|
29.09.2019 20:46:11
Сергей, я не точно выразился, техпроцесс не должен создаваться сам, тем более в Вогбите есть генератор ТП. Достаточно найти номенклатуру изделия с которой связан свой техпроцесс, а если номенклатура не найдена, то добавить ее и потом к ней сгенерировать техпроцесс, или, если это возможно, идентифицировать уже существующий техпроцесс как коллекцию с компонентами и связать его с новой номенклатурой. В примере подробного описания техпроцесса видно, что изделие Кронштейн связан с ТП1. Возможно эту связь один раз можно установить программно или вручную или наконец сгенерировать для новой номенклатуры новый техпроцесс, а потом пользоваться этой связкой при загрузке Заказа на производстве со своим списком номенклатуры изделий.
[img]data:image/png;base64,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[/img] |
|
|
|
|
|
04.10.2019 14:58:29
Сергей! Все таки, возможно загруженную или созданную новую номенклатурную позицию связать один раз вручную или программно с существующим техпроцессом или даже потом вручную сгенерировать к этой номенклатуре новый техпроцесс? А потом пользоваться этой связкой при последующих загрузках.
|
|
|
|
|
|
07.10.2019 12:04:17
"Сгенерировать" техпроцесс к уже существующей номенклатуре нельзя. "Генератор" на основании "шаблона" создаёт новую номенклатуру и к ней сам заполняет всё, что нужно.
"Приделать" существующий техпроцесс от одной номенклатуры (ТП не может существовать "оторванный" вообще от номенклатуры, это коллекция, а у коллекции в любом случае есть owner (номенклатура)) к другой номенклатуре - технически возможно, но я бы настоятельно не рекомендовал этого делать. Помимо техпроцесса там ещё много чего есть. Спецификации, в частности, и параметры. Кроме того, есть всё таки разница между "родной" коллекцией компонентов и "связанной" (приделанной от другой номенклатуры), и я не поручусь на 100% процентов, что на "связанных" коллекциях всё и во всех местах будет потом правильно работать. В общем, я бы так делать не стал. И в первом, и во втором случае намного проще взять "нормальную" номенклатуру, правильно созданную "генератором", и просто её переименовать. Если Вам хочется, чтобы она по другому называлась как-то. |
|
|
|
|
|
07.10.2019 21:32:05
Остается одно. Созданную номенклатуру вместе с id выгрузить в 1С, там ее сопоставить с номенклатурой 1С и выгружать вместе с id в Вогбит. Но техпроцесс то можно, наверное, создать в Вогбит программно и присвоить ему номер из 1С, а потом заполнить его номенклатурой найденной по id?
|
|
|
|
|
|
03.10.2023 12:14:40
Поместила данную библиотеку в папку plugin. Кнопка не появилась на панели во вкладке Номенклатура. Нашла кнопку только в "Настройка -> Команды". (Прикрепляю изобрежения) Подскажите, как добавить кнопку на панель? |
|||
|
|
|
|
03.10.2023 17:24:43
Здравствуйте!
Перетащите мышкой из "команд" (рис.3) в нужное место на панели инструментов |
|
|
|
|
|
19.10.2024 18:13:54
Здравствуйте! Пишу плагин. Есть вопросы по чтению и записи данных. К примеру, как получить список всех элементов номенклатуры (деталей), чтобы потом затолкать его в LookupEdit?
Изменено: - 19.10.2024 18:14:27
|
|
|
|
|
|
19.10.2024 21:35:12
Здравствуйте!
|
|||
|
|
|
|
20.10.2024 12:52:23
Данный метод возвращает один Nomenclature объект. Как мне из него получить "читабельный" список для отображения на форме? |
|||
|
|
|
|
20.10.2024 14:41:09
С этим вопросом разобрался, спасибо)
|
|
|
|
|
|
06.03.2025 12:04:16
Подскажите пожалуйста, как добавлять заказ в разделе "Производственные заказы"?
Ну и соответственно назначать состав и технологию этому заказу. Хотелось бы автоматизировать то что сейчас делается руками, а именно: я создаю номенклатуру каждый раз новую (т.к. все заказы у нас разные), потом заказ, туда складываю эту номенклатуру и на каждую деталь назначаю операции из папки "Технология". Создавать папки и номенклатуры программно мы вобщем-то научились, а вот как заказ оформлять информации не нашли. |
|
|
|
|
|
07.03.2025 17:01:16
Здравствуйте,
Распишу по объектам в БД VOGBIT, что нужно по минимуму для такой задачи создавать в базе. Коллеги подскажут, если нужно, по коду, по тем моментам, которые, возможно, не ясны.
Для начала должна быть сама номенклатура (деталей, изделий), которую будем добавлять в производственный заказ. Если дальше цель стоит создать задания для производства по списку этой номенклатуры, то нужно для неё создать и заполнить техпроцесс. По минимуму для создания заданий нужны операции в техпроцессе и для операций должно быть указано место выполнения (участок) и Тшт. В принципе, по минимуму, этого достаточно. Разберем по шагам. Деталь – номенклатурная позиция. Техпроцесс детали – коллекция компонентов, у которой Owner = номенклатура «Деталь». Тип связи коллекции нужно поставить LT_ManProcess (здесь и далее везде пишу для используемых типов связей, параметров, статусов их идентификаторы). Обозначение коллекции ставьте любое, какое хотите. Статус ставьте тоже любой какой нравится, только НЕ ST_Invalid. Любой другой. Например, ST_Designing. Дальше добавляем в техпроцесс операции. Операция сама – это номенклатурная позиция. Находим нужную в справочнике и добавляем её, как компонент в коллекцию LT_ManProcess (техпроцесс детали). Тип связи компонента ставим LT_Operation. Количество и единицу измерения не заполняем для этого компонента, оставляем пустыми. Дальше нужно для операции задать место выполнения и трудоемкость. Место выполнения (участок), в принципе, у Вас может быть настроено в самом VOGBIT по умолчанию для «операции» в справочнике «Номенклатура». Тогда в техпроцессе уже указывать в явном виде его не нужно, при формировании заданий «подхватится» настроенный по умолчанию участок. Чтобы указать в явном виде для операции место выполнения в техпроцессе, находим в справочнике «Подразделения» нужный производственный участок и добавляем его к компоненту LT_Operation (операции) в коллекции LT_ManProcess (в техпроцессе), как связанный объект с типом связи LT_Place. Если вы используете пооперационное нормирование, то чтобы потом создались задания для производства, нужно ещё добавть хоть какую-нибудь «Трудоемкость» к операции. Для этого добавьте параметр T_OPR_HOUR (float) к компоненту LT_Operation (операции) в коллекции LT_ManProcess (в техпроцессе), значение = Тшт в часах. Всё, по минимуму – достаточно. Т.е. создаете номенклатуру деталей. К каждой детали коллекцию LT_ManProcess (техпроцесс), в неё добавляете нужные компоненты LT_Operation (операции), к каждому такому компоненту добавляете связанный объект LT_Place (подразделение, участок), и параметр T_OPR_HOUR (трудоемкость). На этом то, что вставлять в «заказ» у нас есть. Переходим к созданию и заполнению «Производственного заказа». Создаёте номенклатурную позицию – «Заказ». Обозначение и наименование – по Вашему усмотрению. Для этой номенклатурной позиции создаёте коллекцию компонентов LT_MAN_CHART (тех. карта заказа). Обозначение коллекции ставьте любое, какое нравится, статус ставьте ST_InWork (с любым другим её не будет видно в окне «Производственные заказы»). В эту коллекцию LT_MAN_CHART добавляете из номенклатуры созданные нами ранее «Детали», как компоненты. Тип связи при этом можете использовать, в принципе, почти какой хотите, тут нет особых ограничений, но стандартно используется LT_Product (изделие). В некоторых случаях - LT_Part (деталь), LT_Assemble_Unit (сборочная единица). Обязательно поставьте для компонентов в коллекции LT_MAN_CHART (позиций в карте заказа) количество и единицы измерения (в подавляющем большинстве случаев ставится «шт»). В принципе, вроде, всё. Таким образом у Вас получится заказ, тех. карта заказа, в ней детали с указанием количества, у деталей техпроцессы с операциями. Для того, чтобы «запустить в производство» по самому минимуму достаточно. А дальше уже можно этот «скелет» наращивать «мясом» по мере надобности, в зависимости от задачи.
P.S. В заключении вставлю свои 5 копеек… Для пользователей, у которых «каждый новый заказ – это новая номенклатура», но при этом само производство довольно простое, в современных версиях VOGBIT есть некоторое количество штатных, встроенных функций, которые довольно сильно зачастую облегчают жизнь простым пользователям, без необходимости прибегать к программированию. Например:
Вот эти вещи есть в VOGBIT (в последних версиях) уже готовые, "из коробки". |
|
|
|
|
|
10.03.2025 14:55:27
Доброго времени суток. Набросал код, три основных вопроса:
1. Правильные ли объекты я использую 2. Правильно ли добавляю компонент в коллекцию 3. В какой папке должна создаваться номенклатура заказа, которая будет потом видна во вкладке 'Производственные заказы' //-------------------------------------------- var mainID = 157194; // ID папки 'Основная' var ordersID = 555555; // ID папки 'Заказы' var tokarkaID = 666666; // ID номенклатуры 'Токарка' // Создаем папку заказчика Folder newFolder = ExtApp.Application.General.Folders(mainID).AddNew(); newFolder.Name.Value = "Роскосмос"; newFolder.ParentID.Value = ordersID; newFolder.Save(); // Создаем номенклатуру в этой папке var nmk = ExtApp.Application.General.Nomenclature(newFolder.ID.AsLongInt, CatalogOptions.None).AddNew(); nmk.Notation.Value = "DRAW.001.01"; nmk.Name.Value = "Фланец"; nmk.Save(); // Дальше не знаю, на ощупь писал ComponentCollection collection = new ComponentCollection(); collection.LinkTypeNotation.Value = "LT_ManProcess"; collection.StatusNotation.Value = "ST_Designing"; collection.Notation.Value = "Техпроцесс"; Components component = new Components(); component.OwnerID.DefaultValue = collection.ID.AsLongInt; // Компонент в коллекцию так добавляется? component.LinkTypeNotation.DefaultValue = "LT_Operation"; component.Params["T_OPR_HOUR "].Value = 1; component.SourceNomenclatureID.DefaultValue = tokarkaID; // Создаём номенклатуру заказа // Дальше ключевой вопрос - где создавать номенклатуру? var zkz = ExtApp.Application.General.Nomenclature(КАКОЙ ID СЮДА ПИСАТЬ?, CatalogOptions.None).AddNew(); //--------------------------------------------
Изменено: - 10.03.2025 14:58:49
|
||||
|
|
|
|||