Новая версия VOGBIT 20.5 - Новая платформа: быстрее, надёжнее, удобнее. Новая подсистема управления приоритетами в производстве. Новые возможности для участков ЧПУ. Улучшенные «цеховые терминалы». Новые возможности для совместной работы менеджеров, инженеров и производства при изготовлении уникальной продукции под заказ. И многое другое…

Последние темы на форумах VOGBIT

Перемещение - Прочее
Intelmine-tmc: Добрый день! хотела бы узнать по поводу функции перемещения в вогбит? У меня получилось так, что я при приходе материала указала неверное количество, как я смогу редактировать его? Возможно ли переместить определенное количество материала с одного из ...
Ошибка в режиме "Обеспеченность" - Ошибки в работе
Андрей Тюрин: Текст в красном кружочке: "Некорректная информация об остатках"
Показ экскизов при выдаче со склада - Интерфейс программы
Константин Чилингаров: Здравствуйте, Ок. Записал в список пожеланий. Прикрутим.
Просьба объяснить нюансы в учете - Общие вопросы
Елена Ковалева: Еще вариант, если меню не настроено как у меня: во вложенном файле. Подробное описание в документации: https://vogbit.ru/support/622/#_v7660 https://vogbit.ru/support/622/#_v7660 рисунки 8-9.
Обновление 20.5. Произвольное выделение ячеек и строчек цветами. - Обновление
Сергей: Сейчас в этом месте можно использовать цифры 0 - минимальный, 1 - средний и т.д. (аналогично с фильтром) В некоторых колонках некоторых форм есть такая недоработка. Заметите - пишите. Будем исправлять.
Состав ЛЗК - Состав и технология
Наталья Захарова: Здравствуйте. Нашла на вашем канале Youtube видео "Предварительные заявки и ЛЗК в VOGBIT 20.5". Сделала все в точности, как показано, и стало все правильно получаться.
Документы - Прочее
Intelmine-tmc: Хорошо, спасибо большое
Автоматическая установка единиц измерения - Интерфейс программы
Константин Чилингаров: Значит сделали, но забыли отметить  :)  Бывает. Очень много разных доделок было в этот момент, что-то могли мелкое забыть "закрыть", как сделанное.
Задвоение рабочих заданий. - Производство
Константин Чилингаров: Здравствуйте, Судя по картинкам, если какое-то "задвоение" и имело место быть, то при "включении в план" из окна "новые задания". В 07:30 было создано 2 задания для поста. Должно было из быть 2 или нет - это из этих ...
Как привязать поставщика к поставщику - Общие вопросы
Serge.v.astapov: СПАСИБО!
Выбор технологии при создании производственного заказа - Состав и технология
Константин Чилингаров: Сделал ролик. Конкретно про выбор, какую версию использовать - начиная с 03:33 примерно. И дальше ещё есть, как назначить какой-то из вариантов "по умолчанию". [VIDEO TYPE=YOUTUBE WIDTH=1280 HEIGHT=720 //www.youtube.com/embed/7gywY9uRGeM ...
При изменении состава производственного заказа, необходимо удалить деталь - Прочее
Константин Чилингаров: Сегодня в течение дня отправим. На почту.
Производственные заказы - Общие вопросы
Константин Чилингаров: По поводу именно "высокого" уровня есть, кстати,  ещё разные "приёмы", сокращающие объём рутинных действий. Но они все специфичные, под конкретные случаи. Примеры: 1.  Для лазерной резки при больших объёмах есть технология инт ...
Неснижаемый остаток - Материалы, Комплектующие, Складской учёт
Константин Чилингаров: Вроде, починили ошибку. Хорошо бы ещё потестировать, конечно, какое-то время. Если сильно мешает работать, и нужно как можно скорее исправить в вашей версии программы, то пишите на почту, решим.
Как удалить сотрудников - Демо версия
Serge.v.astapov: Контантин, спасибо, не будем. Мы сегодня оплатим счет от ООО Светосистемы на лицензию. И начнем с чистого листа
Дополнительные колонки в составе изделия - Состав и технология
Михаил: Спасибо за оперативный ответ, помогло действительно простое обновление в окне "Состав"
Не получается отредактировать деталь - Демо версия
Serge.v.astapov: Константин, спасибо! Ключевым моментом было удаление заказов. Пошел дальше разбираться
Обновление 20.5. Система работы с «Предварительными заявками» и «Лимитно-заборными картами» - Обновление
Константин Чилингаров: 3520 Alex-220781 написал: В справочнике Ну... Может быть. Я просто в справочник особо не хожу на них смотреть (из серии, а чего на них там смотреть?  :) ). Сам обычно смотрю или из "Производственных заказов", или из "Обеспеченност ...
Удаление позиции в приходной накладной - Материалы, Комплектующие, Складской учёт
Константин Чилингаров: Ошибку нашли и починили. Штатно исправление войдёт в следующее обновление. Если сейчас мешает, то можем Вам и сейчас прямо починить. Для этого, пожалуйста, напишите на почту, я напишу в ответ, как сейчас починить можно.
Обновление 20.5. Строка поиска. - Обновление
Константин Чилингаров: Здравствуйте, По умолчанию, строка поиска открывается слева вверху (рис.1). Если уже включена панель группировки, то место слева вверху получается под группировку. В этом случае строка поиска открывается справа в этой же строчке (рис.2).

Пример создания плагина

Разработка приложений и функций - Плагины - Технические вопросы
Страницы: 1 2 След.
Пример создания плагина
 
вот пример простого плагина, который добавляет кнопку в Toolbar окна номенклатуры.
При нажатии на кнопку создаётся и показывается форма "Коллекции компонентов".
Пример написан на C#
Код
using System;
using Csdn.Vogbit.Base;
using Csdn.Vogbit.Data;
using Csdn.Vogbit.Forms;
using Csdn.Vogbit.Main;
using System.Windows.Forms;

namespace VogbitPluginExample
{
    [Caption("PluginExample")]
    [ID("{EB7B1DCC-0DDE-4eaf-B500-2D669DE4557C}")]
    public class Example: PlugInBase
    {
        private const string CommandGuidString = "{67ED1590-AB70-46f7-94F9-58A462D333DB}";
        private const string CategoryGuidString = "{B18D68B3-33B2-45eb-BBCA-424B30E65B48}";

        protected override void Connect()
        {
            base.Connect();
            ExtForms.EventHandler += ExtFormsEventHandler;
        }

        void ExtFormsEventHandler(object sender, ExtensibleFormsEventArgs e)
        {
            if (e.EventType == ExtensibleFormsEventType.NewForm)
            {
                if (e.PlugInForm.GetType() == typeof(NomenclatureGridForm))
                {
                    var commandId = new Guid(CommandGuidString);
                    var categoryId = new Guid(CategoryGuidString);

                    var barManager = (IBarManager) e.PlugInForm;
                    var barCategory = barManager.BarCategories.Add(categoryId, "Пример");

                    var exampleButton = barManager.BarCommands.AddButtonCommand(commandId, barCategory, "Команда", false);
                    //exampleButton.IconGlyph = 
                    exampleButton.Caption = "Пример кнопки";
                    exampleButton.ActionExecute += ExampleButtonActionExecute;
                }
            }
        }

        void ExampleButtonActionExecute(object sender, ActionExecuteEventArgs e)
        {
            if (((IPlugInDataForm)ExtForms.ActiveForm).CurrentItem != null)
            {
                //long nmkId = ((NomenclatureItem) ((IPlugInDataForm) ExtForms.ActiveForm).CurrentItem).ID;
                long nmkId = ((IPlugInDataForm) ExtForms.ActiveForm).CurrentItem["ID"].AsLongInt;

                var formParams = new PlugInFormParams();
                formParams["OwnerID"].Value = nmkId;

                var collectionsForm = ExtForms.GetNewForm(typeof (OwnedComponentCollectionsForm).ToString());
                collectionsForm.TabText = "Пример формы";
                collectionsForm.OpenForm(formParams);
                collectionsForm.ShowFloatingForm(DockStyle.None);
            }

        }
    }
}
 
вот скомпилированная библиотека и скриншот.
 
Этот пример попробовал.
Хочется побольше примеров, таких как
- создания пользовательского окна встроенного в VIGBIT (например номенклатура + несколько параметров)
- пример пользовательского модального окна
 
Для того, что бы встроить окно в Vogbit надо наследовать свою форму от одной из вогбитовских.
Например, для "номенклатура + несколько параметров" можно занаследоваться от DataViewForm.
Потом пишем запрос и вываливаем данные в форму.
Вот простой пример формы и запроса:
Код
using Csdn.Vogbit.Base;
using Csdn.Vogbit.Forms;
using Csdn.Vogbit.QB;

namespace VogbitExample
{
    public partial class NmkAndParamsForm : DataViewForm
    {
        public NmkAndParamsForm(IExtensibleApplication app)
            : base(app)
        {

        }

        protected override void OnLoad(System.EventArgs e)
        {
            base.OnLoad(e);

            GetData();

            DataControl.Columns.Add(DataSource.PropertyDefs["Notation"], "Обозначение");
            DataControl.Columns.Add(DataSource.PropertyDefs["Name"], "Наименование"]);
            DataControl.Columns.Add(DataSource.PropertyDefs["p1Value"], "L");
            DataControl.Columns.Add(DataSource.PropertyDefs["p2Value"], "Nmax");
        }


        void GetData()
        {
            var sqlQuery = new SqlQuery();
            var selectQuery = sqlQuery.CreateQuery();
            var nmk = (Csdn.Vogbit.QB.Schema.Views.Nomenclature)selectQuery.From.AddView(Views.Nomenclature, "nmk");
            var p1 = (Csdn.Vogbit.QB.Schema.Views.ObjectParameters) selectQuery.From.AddView(Views.ObjectParameters, "p1");
            var p2 = (Csdn.Vogbit.QB.Schema.Views.ObjectParameters)selectQuery.From.AddView(Views.ObjectParameters, "p2");

            var j1 = new Join(nmk, p1, JoinType.Inner, new Condition().EqualTo(nmk.ID, p1.OwnerID).EqualTo(p1.ParameterNotation, "L")).
                InnerJoin(p2, new Condition().EqualTo(nmk.ID, p2.OwnerID).EqualTo(p2.ParameterNotation, "Nmax"));

            selectQuery.Joins.Add(j1);
            selectQuery.Columns.AddAllColumns(nmk);
            selectQuery.Columns.Add(p1.ParameterValue, "p1value");
            selectQuery.Columns.Add(p2.ParameterValue, "p2Value");

            sqlQuery.Add(selectQuery);

            var data = ExtensibleApplication.Application.ExecuteQuery(sqlQuery);

            data.Close();
            data.Prepare();
            DataSource = data;
        }
    }
}

показать эту форму:
Код
var f = ExtForms.GetNewForm(typeof(NmkAndParamsForm).ToString());
 f.ShowFloatingForm(DockStyle.None);
если хотите показать модальное окно:
Код
f.ShowDialog();
Если хотите встраиваемое окно, но со своими контролами - наследуйтесь от XtraForm.
Для создания диалогового окна можно наследоваться от EditDialog
Если хотите совсем своё окно - стандартным способом.
 
для демо-базы результат должен выглядить так:
2.png (21.64 КБ)
 
А можете показать реализацию аналогичных плагинов на VB.NET.
Спасибо.
 
А разве недостаточно примера для одного языка ? Тем более для языков .Net, где всё очень похоже ?
 
Convert C# to VB.NET
 
Возможно ли рассчитывать и добавлять норму расхода материала на деталь (кг),в констр.спец. по размерам детали(лист а х b;прокат L ), параметрам самого материала (уд,вес),применив коэффициенты расхода по типу детали (1,1;1,05 и др).Какой алгоритм,мож. пример,с чего начать... :D
 
Цитата
yser83 пишет:
Возможно ли рассчитывать и добавлять норму расхода материала на деталь (кг),в констр.спец. по размерам детали(лист а х b;прокат L ), параметрам самого материала (уд,вес),применив коэффициенты расхода по типу детали (1,1;1,05 и др)
Да, возможно.
Пишется плагин, который будет это делать и вперёд!
Обычное программирование. Ничего сложного. Пишется алгоритм на бумажке (в файле произвольного формата) что на что умножать и по каким правилам. И пишется потом плагин, который это делает и результат в нужное место записывает. Например, берёт параметры детали, параметры материала, определённым образом их обрабатывает по какому-то алгоритму и результат записывает в норму расхода. С точки зрения программирования, при наличии толкового ТЗ - задачка элементарная.
Писали мы такие калькуляторы для расчёта норм расхода в своей предыдущей программе (в TCS).

Цитата
yser83 пишет:
пример,с чего начать...
В смысле?
Вы хотите сами плагин свой написать?
Тогда начать со следующего:
1. Написать для VOGBIT свой плагин типа "Hello World"
2. Написать свой плагин, который берёт у выбранной номенклатуры параметр "A" и параметр "B", умножает их друг на друга и значение записывает в параметр "C".
 
Да ! интересно разобраться
писал на С# в VS под Win, а как тут разобраться, откуда "брать" параметр куда вставлять...
 
По поводу "откуда" и "куда".

Деталь - номенклатурная позиция

Характеристики детали (длина, ширина и т.п.) - параметры этой номенклатурной позиции.

Материал (в базе данных) - номенклатурная позиция

Характеристики материала (удельный вес и т.п.) - параметры номенклатуры материала

Техпроцесс - коллекция компонентов, связанная с номенклатурой детали. Тип связи LT_ManProcess.

Материал детали - компонент в коллекции (в техпроцессе). Тип связи LT_Material.

Характеристики заготовки (размеры и т.п.) - параметры этого компонента.

Это всё было по части "откуда".
"Куда":

Норма расхода материала - количество  единица измерения компонента "материал" в коллекции (в техпроцессе).
 
"брать" так:
1. получаете параметры нужного объекта(номенклатуры, компонента, коллекции...)
2. среди всех параметров находите нужный. Искать можно по любому полю. В примере поиск по UID'у. На больших объёмах лучше искать по ParameterID.
3. возвращаете значение найденного параметра(в примере параметр типа double)
Код
var objParams = ExtensibleApplication.Application.General.ObjectParameters(objId);
var searchResult = objParams.QuickSearch(new[] { "ParameterUID" }, new object[] {"ObjectParameterUid"});
if (sr.Length > 0)
{
   return ((ObjectParameter) searchResult[0]).ParameterValue.AsDouble;
}

Добавляем параметр так:
1. получаете параметры нужного объекта(номенклатуры, компонента, коллекции...)
2. создаёте новый параметр
3. изменяете необходимые значения
4. сохраняете
Код
var objParams = ExtensibleApplication.Application.General.ObjectParameters
var objParam = objectParameters.AddNew();
if(objParam != null)
try
{
   objParam.ParameterID.Value = parameterId;
        objParam.ParameterValue.Value = parameterValue;
        objParam.Save();
}
finally
{
   objParam.Cancel();
}
 
Спасибо, попробую разобраться...
Изменено: yser83 - 22.01.2014 15:41:49
 
возможна отладка плагина в Visual Studio ?
vogbit против "Это приложение не может быть запущено под отладчиком. Деактивируйте все активные отладчики и запустите приложение снова"
 
Цитата
yser83 пишет:
возможна отладка плагина в Visual Studio ?
нет
 
как плагины делать? тока коммерчески...
 
Да, если брать коммерческую версию, то там стоит защита. И не даёт запускать под отладчиком. Вариант последней версии программы, который может работать под отладчиком, доступен только разработчикам.

Но есть предложение:
Если хотите, можем найти какую-нибудь прошлогоднюю версию программы в виде голой платформы (без плагинов) и без защиты от запуска под отладчиком. И бесплатно вам лично её дать.
Базу можем любую к ней на выбор дать, хоть "демо", хоть "стартовую". Нам всё равно.
Для вашей задачи подойдёт полностью. С точки зрения считывания/записывания параметров разницы между старой и новой версией нет никакой. Можно на старой версии тренироваться, отлаживать и т.п.
Если потом захотите то, что получится, использовать в последней версии, то просто пересобрать надо будет под новую. Отладчик для этого не нужен, как я понимаю.
 
Это очень интересное предложение...работать будут два приложения на одном компьютере?
 
Найдём какую-нибудь такую версию, которая будет ;)

Надо будет только не ставить её через setup обычный, скорее всего, а просто переписать файлы в нужное место. И запускать оттуда ярлыком, а не через меню "Пуск".
Ну это мы напишем вам кратенькую инструкцию, что куда положить.
 
Спасибо.
 
В общем, если надумаете, пишите на почту.
В течение недели после этого, что-нибудь вам подберём и вышлем с инструкцией.
 
Здравствуйте, Константин. Пробую подключить  скомпиллированный (код- пример кнопки с форума) ,  dll-ка получается 6 кб, в Вогбите не видет в настройке панели (пример-пример кнопки), думаю настройки VS 2013 надо, как то  особенно поставить, подскажите в чем может быть проблемма.
 
Код меняли?
Для разработки используем студию 2012, но вряд ли дело в настройках студии.
Фреймворк 4.5 попробуйте в настройках поставить.
Скиньте файл получившийся
 
Менял guid, текст "моя кнопка", собирать пробовал на разных версиях фрейма...
 
У меня ваша кнопка появилась.
По умолчанию она скрыта.
Можно через код достать так:
Код
barManager.MainToolBar.AddCommand(CommandGuidString, Guid.Empty, false);

или руками: показать панель инструментов-> добавить или удалить кнопки -> Настройка -> Команды -> Мой пример -> Мой пример кнопки и тащите на панель. В след. раз она там будет (и в ленте тоже)
 
У меня в командах(категории:  ) нет"Мой пример", а при использовании оригинального файла пример кнопки VogbitPluginExample, пример -> пример кнопки работает...
Изменено: yser83 - 14.02.2014 16:29:06
 
Вероятно, в директории вогбита оба файла лежат. С одинаковым ID плагина. "Форумный" подцепился раньше. Удалите "форумный", оставьте свой.
 
Удален,в списке файлов программы был,а в директории программы "форумный" остался, удалил, все заработало !!! Спасибо!!!
 
Потихоньку разбираюсь...Создана кнопка в панели окна номенклатура, находит параметры выбранной детали. Подскажите,пожалуйста, где найти параметр материала, данной детали,и возникла проблемка с "Quantity"(кол.материала),как (из номенклатуры) вернуть в компоненты детали, вроде все корректно изложил...
Изменено: yser83 - 19.02.2014 04:10:52
Страницы: 1 2 След.
Сейчас на форуме (гостей: 16)
Всего зарегистрированных пользователей: 3077
Приняло участие в обсуждении: 355
Всего тем: 804
Всего сообщений: 6067

Полезные ссылки:
подготовка производства Видео-презентация Себестоимость управление ремонтами планирование производства Производственный заказ Установка VOGBIT инструкция Трудоёмкость загрузка оборудования расчет себестоимости Деактивация VOGBIT базы данных VOGBIT Начало работы Расчёт комплектации Складской учёт технологическая подготовка производственный учет складской учет ТПП управление данными Демонстрационный режим VOGBIT Обновление VOGBIT График производства электронный архив управление качеством Создание новой базы данных VOGBIT Полная версия VOGBIT Планирование мелкосерийного производства Техническая Подготовка Производства управление производством деактивации VOGBIT активация VOGBIT демоверсия Состав изделия Обзор обновления Генератор отчетов склад Сменное задание производство металлоконструкций Задания для производства пост руководство администраторов VOGBIT Тип нормирования разработчика отчетов vogbit состав изделия Заказ на производство Нормирование технология Планирование производства Расчёт работ Импорт из 3D модели Установка изменения и новые функции в графике загрузки постов Перенос работ продукция
×
Вход на сайт