Форум профессиональных мебельщиков PROMEBELclub
 
PROMEBELclub - Форум для мебельщиков: руководителей мебельных предприятий, конструкторов, дизайнеров, мастеров, технологов и всех, кто имеет отношение к мебельному бизнесу. Программы для конструирования мебели, дизайна, для комплексной автоматизации мебельного предприятия. Мебельная литература и обучающие пособия.
 
 
Внимание! Если Вы владелец или управляющий мебельным бизнесом и Ваша деятельность ведется в одной из стран ТС - тогда специально для Вас на нашем форуме создан закрытый раздел Предприниматель. Вступайте в группу Предприниматель и общайтесь, ищите партнеров и реализуйте совместные взаимовыгодные проекты. Подать заявку на вступление в группу Предприниматель можно в личном кабинете.

Вернуться   Форум профессиональных мебельщиков PROMEBELclub > Программы для мебельщиков > Программы для конструирования и дизайна мебели > Система БАЗИС > Базис-мебельщик. Скрипты


Реклама на портале PROMEBELclub
шкаф-купе со скидкой по акции
Реклама на портале PROMEBELclub

искусственный камень Мебель196. Мебельный интернет-магазин в Екатеринбурге.
Ответ
 
Опции темы Опции просмотра
Старый 06.06.2017, 09:56  
БАЗИС 10 - Скрипты
systland
Модератор
Регистрация: 30.10.2007
Адрес: Москва
Сообщений: 561

Сказал(а) спасибо: 291
Поблагодарили 427 раз(а) в 179 сообщениях
Версия для печати Отправить по электронной почте
systland systland вне форума 06.06.2017, 09:56
Рейтинг: (3 голосов - 4.00 средняя оценка)

Обмениваемся , задаем вопросы, отвечаем... Все, что касается скриптов в БМ 10 в этой теме.
__________________


Последний раз редактировалось systland; 26.12.2017 в 11:52..
Просмотров: 56013
Ответить с цитированием Вверх
Старый 23.01.2018, 20:17   #71
Klim Bassenger
Пользователь
 
Аватар для Klim Bassenger
 
Регистрация: 15.02.2010
Сообщений: 53
Сказал(а) спасибо: 13
Поблагодарили 27 раз(а) в 14 сообщениях
Вес репутации: 118
Klim Bassenger на пути к лучшему
По умолчанию

Цитата:
Сообщение от Lonbus Посмотреть сообщение
Перестала работать расстановка позиций, в предыдущих версиях можно было так

PHP код:
Action.Control.Owner.Owner.dpModelTree.Controls[1].BtnArrangeClick(); 
Метод небезопасный, но при должном использовании все работало корректно. Больше похож на "костыль", но он работал.

В версиях 8 и 9 вызвать нажатие на кнопку, например, с именем BtnArrange, можно было процедурами

PHP код:
BtnArrange.PostClick(), BtnArrange.Click(), BtnArrangeClick(); 
Сейчас процедуры стали недоступны, с другой стороны почему-то остались процедуры унаследованные от TComponent.

Доступ к объектам TAction есть, но запуска расстановки позиций там не нашел.

Хочется, чтобы разработчики добавили TAction расстановки позиций на главную форму.

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

Скрытый текст


function arrangePositions() {
var mainForm = Action.Control.Owner.Owner;
if ((system.apiVersion == 85) || (system.apiVersion == 90)) {
var modelTree = mainForm.FindComponent("dpModelTree");
if (modelTree != undefined) {
if (modelTree.Visible == false) {
var actModelTree = mainForm.FindComponent("a3ModelTree");
if (actModelTree != undefined) {
actModelTree.Execute();
}
else {
alert('Недоступно событие <Структура модели>!');
return false;
}
}
if(confirm('Расстановка позиций будет выполнена заново.\nПродолжить?')) {
if (modelTree.Visible == true) {
var frmModelTree = modelTree.FindComponent("FrmModelTree");
if (frmModelTree != undefined) {
var btnArrange = frmModelTree.FindComponent("BtnArrange");
if (btnArrange != undefined) {
Action.Hint = 'Расстановка позиций...';
btnArrange.Click();
return true;
}
}
}
else {
alert('Закрыт инструмент <Структура модели>!');
return false;
}
}
else {
alert('Отменено пользователем!');
return false;
}
}
else {
alert('Недоступен объект <Структура модели>!');
return false;
}
}
else {
if(confirm("Расстановка позиций будет выполнена заново.\nДалее, при необходимости, создайте чертежи.\nПродолжить?")) {
makeDrawings = mainForm.FindComponent("a3MakeDrawings");
if (makeDrawings != undefined) {
Action.Hint = 'Расстановка позиций...';
deletePositions();
makeDrawings.Execute();
if (isEmptyPositions() == true) {
alert('Расстановка позиций не выполнена!');
return false;
}
return true;
}
else {
alert('Недоступно событие <Создать чертежи>!');
return false;
}
}
else {
alert('Отменено пользователем!');
return false;
}
}
alert('Невозможно выполнить расстановку позиций!');
return false;
}
[свернуть]
__________________
Если бы Бог хотел, чтобы мы думали только головой, он бы сделал нас колобками.
Klim Bassenger вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
wizardpnz (07.06.2018)
Старый 23.01.2018, 22:24   #72
maxgmv
VIP
 
Аватар для maxgmv
 
Регистрация: 15.11.2008
Адрес: г.Москва
Сообщений: 492
Сказал(а) спасибо: 3,014
Поблагодарили 1,211 раз(а) в 306 сообщениях
Вес репутации: 414
maxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордится
По умолчанию

Расстановка позиций в последнем обновлении Базиса работает!

Добавлена функция расстановки позиций
Action.ArrangePositions(
All = 0,
New = 1,
Check = 2)

т.е
Action.ArrangePositions(0) - расстановка позиций заново,
Action.ArrangePositions(1) - расстановка позиций у новых объектов,
Action.ArrangePositions(2) - проверка позиций.
__________________
Обходя разложенные грабли - ты теряешь драгоценный ОПЫТ!
maxgmv вне форума   Ответить с цитированием Вверх
6 пользователя(ей) сказали cпасибо:
Старый 23.01.2018, 22:27   #73
AlexBolton
Модератор
 
Аватар для AlexBolton
 
Регистрация: 19.02.2008
Адрес: www
Сообщений: 2,642
Сказал(а) спасибо: 6,589
Поблагодарили 13,185 раз(а) в 2,295 сообщениях
Вес репутации: 3110
AlexBolton репутация неоспоримаAlexBolton репутация неоспоримаAlexBolton репутация неоспоримаAlexBolton репутация неоспоримаAlexBolton репутация неоспоримаAlexBolton репутация неоспоримаAlexBolton репутация неоспоримаAlexBolton репутация неоспоримаAlexBolton репутация неоспоримаAlexBolton репутация неоспоримаAlexBolton репутация неоспорима
По умолчанию

Цитата:
Сообщение от maxgmv Посмотреть сообщение
Расстановка позиций в последнем обновлении Базиса работает!
вернули js32.dll - многое снова заработало (а в ченж логе ни слова)
но из-за node с XP проблемы остались...
__________________
.
▓▒░ Халявы не бывает ░▒▓

[ Как правильно задавать вопросы на форумах ] | [ Как просто, быстро и правильно опубликовать фото и файлы в сообщении 01.12.2018] | [ USDownloader - удобно и безопасно скачиваем с файлообменников 02.12.2018]

Любые вопросы по любому системному и мебельному софту, любые конвертации, настройки и т.д. >сюда< (кроме озвученных в мануалах, инструкциях и темах форума) ...
AlexBolton вне форума   Ответить с цитированием Вверх
Старый 23.01.2018, 22:31   #74
Klim Bassenger
Пользователь
 
Аватар для Klim Bassenger
 
Регистрация: 15.02.2010
Сообщений: 53
Сказал(а) спасибо: 13
Поблагодарили 27 раз(а) в 14 сообщениях
Вес репутации: 118
Klim Bassenger на пути к лучшему
По умолчанию

Цитата:
Сообщение от maxgmv Посмотреть сообщение
Расстановка позиций в последнем обновлении Базиса работает!

Добавлена функция расстановки позиций
Action.ArrangePositions(
All = 0,
New = 1,
Check = 2)

т.е
Action.ArrangePositions(0) - расстановка позиций заново,
Action.ArrangePositions(1) - расстановка позиций у новых объектов,
Action.ArrangePositions(2) - проверка позиций.
Я в скриптах не понимаю ничего. Получается то, что я написал постом выше это пляски с бубном?
__________________
Если бы Бог хотел, чтобы мы думали только головой, он бы сделал нас колобками.
Klim Bassenger вне форума   Ответить с цитированием Вверх
Старый 24.01.2018, 09:24   #75
maxgmv
VIP
 
Аватар для maxgmv
 
Регистрация: 15.11.2008
Адрес: г.Москва
Сообщений: 492
Сказал(а) спасибо: 3,014
Поблагодарили 1,211 раз(а) в 306 сообщениях
Вес репутации: 414
maxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордитсяmaxgmv за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от AlexBolton Посмотреть сообщение
вернули js32.dll
Эта библиотека всегда была. Если не ошибаюсь без неё работать скрипты не будут.
Цитата:
Сообщение от Klim Bassenger Посмотреть сообщение
Получается то, что я написал постом выше это пляски с бубном?
С бубном или без, не знаю, но до январского обновления, действительно расстановка позиций в скриптах не работала.
__________________
Обходя разложенные грабли - ты теряешь драгоценный ОПЫТ!
maxgmv вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
andronf (24.01.2018)
Старый 26.01.2018, 20:08   #76
wizardpnz
Местный
 
Регистрация: 02.07.2011
Сообщений: 102
Сказал(а) спасибо: 49
Поблагодарили 39 раз(а) в 16 сообщениях
Вес репутации: 109
wizardpnz на пути к лучшему
По умолчанию

как подключать модули node.js
типа такого
npm install excel4node
куда это писать
установить ноду отдельно?
или просто взять npm.exe оттуда
???
wizardpnz вне форума   Ответить с цитированием Вверх
Старый 27.01.2018, 00:39   #77
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 237
Сказал(а) спасибо: 49
Поблагодарили 413 раз(а) в 159 сообщениях
Вес репутации: 123
Letos - очень-очень хороший человекLetos - очень-очень хороший человекLetos - очень-очень хороший человекLetos - очень-очень хороший человекLetos - очень-очень хороший человек
По умолчанию

Цитата:
Сообщение от wizardpnz Посмотреть сообщение
как подключать модули node.js
типа такого
npm install excel4node
куда это писать
установить ноду отдельно?
или просто взять npm.exe оттуда
???
Для установки модулей через npm лучше установить nodejs, чтобы он подключил/установил все необходимые файлы (типа node-gyp, npm и т.д.)
Letos вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
wizardpnz (27.01.2018)
Старый 03.02.2018, 22:45   #78
wizardpnz
Местный
 
Регистрация: 02.07.2011
Сообщений: 102
Сказал(а) спасибо: 49
Поблагодарили 39 раз(а) в 16 сообщениях
Вес репутации: 109
wizardpnz на пути к лучшему
По умолчанию

работа с excel на базис10 нужно установить ноду и пакет excel4node
https://www.npmjs.com/package/excel4node
npm install excel4node

// Require library
var xl = require('excel4node');

// Create a new instance of a Workbook class
var wb = new xl.Workbook();

// Add Worksheets to the workbook
var ws = wb.addWorksheet('Sheet 1');
var ws2 = wb.addWorksheet('Sheet 2');

// Create a reusable style
var style = wb.createStyle({
font: {
color: '#FF0800',
size: 12
},
numberFormat: '$#,##0.00; ($#,##0.00); -'
});

// Set value of cell A1 to 100 as a number type styled with paramaters of style
ws.cell(1,1).number(100).style(style);

// Set value of cell B1 to 300 as a number type styled with paramaters of style
ws.cell(1,2).number(200).style(style);

// Set value of cell C1 to a formula styled with paramaters of style
ws.cell(1,3).formula('A1 + B1').style(style);

// Set value of cell A2 to 'string' styled with paramaters of style
ws.cell(2,1).string('string').style(style);

// Set value of cell A3 to true as a boolean type styled with paramaters of style but with an adjustment to the font size.
ws.cell(3,1).bool(true).style(style).style({font: {size: 14}});

wb.write('Excel.xlsx');
wizardpnz вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
Ovsyanicov (06.02.2018)
Старый 06.02.2018, 08:44   #79
Sergenald
Новичок
 
Регистрация: 21.09.2017
Сообщений: 19
Сказал(а) спасибо: 15
Поблагодарили 4 раз(а) в 2 сообщениях
Вес репутации: 0
Sergenald пока не определено
По умолчанию

кто-нибудь разбирался уже, заработали схемы крепежа через скрипты? а то примеры потыкал, они как не работали так и продолжают. В обновлении не нашёл про это упоминаний, но вроде была информация что должны прикрутить.
Sergenald вне форума   Ответить с цитированием Вверх
Старый 06.02.2018, 10:11   #80
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 237
Сказал(а) спасибо: 49
Поблагодарили 413 раз(а) в 159 сообщениях
Вес репутации: 123
Letos - очень-очень хороший человекLetos - очень-очень хороший человекLetos - очень-очень хороший человекLetos - очень-очень хороший человекLetos - очень-очень хороший человек
По умолчанию

Цитата:
Сообщение от Sergenald Посмотреть сообщение
кто-нибудь разбирался уже, заработали схемы крепежа через скрипты? а то примеры потыкал, они как не работали так и продолжают. В обновлении не нашёл про это упоминаний, но вроде была информация что должны прикрутить.
Вот небольшой пример:
PHP код:
var p1 GetPanel("Укажите панель");
var 
p2 GetPanel("Укажите панель");
if (
p1 && p2){
  
Action.Continue();
  var 
scheme Action.Properties.NewFurniture('схема');
  
scheme.OnChange = function (){
    
DeleteNewObjects();
    
scheme.Value.MountScheme(p1p2FurniturePosition.InsideNewVector(000));
  }

установка схемы идет через функцию MountScheme();
Параметры:
1. Панель1
2. Панель2
3. Позиция установки схемы (сверху, снизу, изнутри, снаружи)
4. Базовая точка
Letos вне форума   Ответить с цитированием Вверх
5 пользователя(ей) сказали cпасибо:
anb (06.02.2018), AndrianoS (06.08.2018), maxgmv (06.02.2018), Ovsyanicov (06.02.2018), Sergenald (06.02.2018)
Ответ

Нижняя навигация
Вернуться   Форум профессиональных мебельщиков PROMEBELclub > Программы для мебельщиков > Программы для конструирования и дизайна мебели > Система БАЗИС > Базис-мебельщик. Скрипты

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Базис-Мебельщик 10 systland Базис-мебельщик 10.0 717 Вчера 22:33
БАЗИС-Мебельщик 7.0 Shadow Базис-мебельщик 7.0 2228 12.09.2016 19:13
Базис-мебельщик JavaScript ran Ищу работу 0 09.05.2014 10:08


Текущее время: 23:05. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
© 2007-2018 PROMEBEL