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

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

Реклама

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

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

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

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


Последний раз редактировалось systland; 26.06.2017 в 15:11..
Просмотров: 6924
Ответить с цитированием Вверх
Старый 26.06.2017, 11:48   #2
AndrianoS
Пользователь
 
Регистрация: 21.08.2009
Адрес: Санкт-Петербург
Сообщений: 51
Сказал(а) спасибо: 46
Поблагодарили 9 раз(а) в 6 сообщениях
Вес репутации: 109
AndrianoS на пути к лучшему
По умолчанию

Здравствуйте!
Как можно перебрать все объекты?
В базис 9 данный код работал.Сейчас,я так понимаю, видит только внешние объекты,вложенные нет.Если есть слои в проекте,то останавливается на слоях.
Возможно нужно рекурсивно обходить,только как,пока не понимаю.

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


//Перебираем все объекты
Model.forEach (function(obj) {
alert(obj.Name);
if (obj.Name[0]=="#") {
StartEditing(obj);
obj.Selected = true;
if (obj.Name[1]=="M" || obj.Name[3]=="M") {
create_article_milan(obj);
obj.Name = name_block;
// Задаем артикул для серии Quadro
} else if (obj.Name[1]=="Q" || obj.Name[3]=="Q") {
create_article_Quadro(obj);
obj.Name = name_block;
// Задаем артикул для ателье
} else if (obj.Name[1]=="A") {
create_article_Atelie(obj);
obj.Name = name_block;
}

}

});
[свернуть]
AndrianoS вне форума   Ответить с цитированием Вверх
Старый 26.06.2017, 12:44   #3
AndrianoS
Пользователь
 
Регистрация: 21.08.2009
Адрес: Санкт-Петербург
Сообщений: 51
Сказал(а) спасибо: 46
Поблагодарили 9 раз(а) в 6 сообщениях
Вес репутации: 109
AndrianoS на пути к лучшему
По умолчанию

Получилось решить самостоятельно.Вот решение,как перебрать объекты
Решение через рекурсию:

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


Код:
Recurse(Model);

 function Recurse(List) {
 for (var i = 0; i < List.Count; i++) {
        Obj = List[i];
        if (Obj.List){
            call_nameObj(Obj);
            Recurse(Obj);
        }
        else {
            call_nameObj(Obj);
        }
    }
}
[свернуть]
AndrianoS вне форума   Ответить с цитированием Вверх
2 пользователя(ей) сказали cпасибо:
AlexBolton (26.06.2017), maxgmv (26.06.2017)
Старый 26.06.2017, 20:14   #4
IStiv
Новичок
 
Регистрация: 02.12.2016
Сообщений: 9
Сказал(а) спасибо: 2
Поблагодарили 11 раз(а) в 3 сообщениях
Вес репутации: 0
IStiv на пути к лучшему
По умолчанию

Всем привет.
Возникла необходимость переноса скриптов на Базис 10.

1.node.js надо ставить или оно в комплекте? или оно надо только если использовать TypeScript ,debug и модули от node?

2. почему в комплекте поставке Базис 10 не работающие скрипты ?(здесь ведь есть представители Базиса?). в частности require же в node по другому работает.

3.Документация по скриптам актуализирована?(насколько я понял нет). Будет ли это сделано в ближайщее время?
Господа из Базиса Вы делаете хороший продукт. Но без документации это пипец просто ( да я слышал что "скрипты поставляются как есть"), но зачем тратить время людей - напишите документацию по человечески. Нашел аккаунт на GitHub - там тоже какие то обрывки информации. Хорошо хоть инструкцию как настроить debug выложили. Правда на этот GitHub ссылок как бы нигде особо нет. В Базис 9 свойства объектов по перебору вычислял , сейчас еще веселее видимо будет. Извините если что вообщем. Хочется просто работать, а не искать и догадываться как тут у Вас все устроено, и не "выковыривать" свойства объектов перебором.
IStiv вне форума   Ответить с цитированием Вверх
5 пользователя(ей) сказали cпасибо:
AlexBolton (26.06.2017), AndrianoS (27.06.2017), Igor_482 (27.06.2017), Letos (28.06.2017), Ovsyanicov (21.07.2017)
Старый 28.06.2017, 12:42   #5
Letos
Пользователь
 
Регистрация: 28.06.2017
Сообщений: 39
Сказал(а) спасибо: 11
Поблагодарили 119 раз(а) в 26 сообщениях
Вес репутации: 33
Letos скоро придёт к известностиLetos скоро придёт к известности
По умолчанию

Цитата:
Сообщение от IStiv Посмотреть сообщение
1.node.js надо ставить или оно в комплекте? или оно надо только если использовать TypeScript ,debug и модули от node?
Весь движок скриптов в библиотеке node.dll. Так что Node.js устанавливать не надо.

Цитата:
Сообщение от IStiv Посмотреть сообщение
2. почему в комплекте поставке Базис 10 не работающие скрипты ? в частности require же в node по другому работает.
Со слов разработчика, system.require был попыткой сымитировать стандартный require, попытка не удалась, но (непонятно почему) было написано несколько примеров с ним. Вместо него лучше использовать system.include, с обновлением system.require будет работать, но не будет в подсказке.
В самом Node.js require работает иначе и работает с т.н. "модулями", для которых нужен свой стиль написания (возможно, скоро на гитхабе это будет описано)

Цитата:
Сообщение от IStiv Посмотреть сообщение
3.Документация по скриптам актуализирована?
Нет, но надеюсь, в ближайшее время обновится.
Letos вне форума   Ответить с цитированием Вверх
3 пользователя(ей) сказали cпасибо:
andronf (29.06.2017), maxgmv (30.06.2017), Ovsyanicov (28.06.2017)
Старый 29.06.2017, 20:02   #6
IStiv
Новичок
 
Регистрация: 02.12.2016
Сообщений: 9
Сказал(а) спасибо: 2
Поблагодарили 11 раз(а) в 3 сообщениях
Вес репутации: 0
IStiv на пути к лучшему
По умолчанию

Цитата:
Сообщение от Letos Посмотреть сообщение
Весь движок скриптов в библиотеке node.dll. Так что Node.js устанавливать не надо.
Спасибо за ответы.По возможности прошу еще ответить на вопросы.

1.этот "весь движок" . к нему можно подключать модули от node ? npm и все такое? если "да" то как?

2. на гитхаб есть свежий пример использования модуля "fs" как он подключен? или часть модулей защиты в .dll? (хотелось бы толковый обзор что да как там у Вас реализовано..)

3. Так как же теперь использовать require? очень хотелось бы инструкцию. (в коде много строк только require и спасал..)

4. Как теперь организовывать работу с COM объектами? (пример (который старый в новом Базисе) конечно же работает криво). в node надо отдельный модуль подключать для COM . Или минимальный пример бы как записать даннные в ячейку Exel через COM (данные из Базиса).

Вопросов вообщем много,а примеров и документации нет. Спасибо если внесете какую то ясность.
IStiv вне форума   Ответить с цитированием Вверх
Старый 30.06.2017, 13:05   #7
Letos
Пользователь
 
Регистрация: 28.06.2017
Сообщений: 39
Сказал(а) спасибо: 11
Поблагодарили 119 раз(а) в 26 сообщениях
Вес репутации: 33
Letos скоро придёт к известностиLetos скоро придёт к известности
По умолчанию

Прежде всего: Давайте, чтобы не засорять тему, все вопросы по поводу "что нового и как этим пользоваться" задавать мне в личные сообщения или на почту, а я буду править вики на гитхабе.

Цитата:
Сообщение от IStiv Посмотреть сообщение
1.этот "весь движок" . к нему можно подключать модули от node ? npm и все такое? если "да" то как?
Этот "весь движок" основан целиком и полностью на Node.js (правда, относительно старой версии). Так что дополнительные модули подключать можно, надеюсь сегодня или в выходные напишу инфу на гитхабе (ибо объяснять тут, думаю, долго). Но чтобы устанавливать модули из npm, необходимо установить Node.js

Цитата:
Сообщение от IStiv Посмотреть сообщение
2. на гитхаб есть свежий пример использования модуля "fs" как он подключен? или часть модулей защиты в .dll? (хотелось бы толковый обзор что да как там у Вас реализовано..)
Все стандартные модули Node.js (fs, path, net и т.д.) зашиты внутри библиотеки. Внешние (из npm) придется устанавливать вручную.

Цитата:
Сообщение от IStiv Посмотреть сообщение
3. Так как же теперь использовать require? очень хотелось бы инструкцию. (в коде много строк только require и спасал..)
Стандартный require в ноде подключает модули (у модуля немного другая структура кода). Как я понял, речь идет о функции system.require - она работает так же, как system.include и просто выполняет подключаемый файл, добавляя из него все переменные и функции.

Цитата:
Сообщение от IStiv Посмотреть сообщение
4. Как теперь организовывать работу с COM объектами? (пример (который старый в новом Базисе) конечно же работает криво). в node надо отдельный модуль подключать для COM . Или минимальный пример бы как записать даннные в ячейку Exel через COM (данные из Базиса).
Не совсем понял вопроса. Из всех примеров нашел только работу с вордом - он вроде нормально работает. По поводу экселя - немного погуглил, нашел инфу как все сделать, но не получилось - похоже индексные свойства вызывать не хочет. Думаю, что средствами Базиса запись в эксель сделать пока не получится.
Letos вне форума   Ответить с цитированием Вверх
4 пользователя(ей) сказали cпасибо:
AndrianoS (30.06.2017), IStiv (01.07.2017), Kudesnick (30.06.2017), maxgmv (30.06.2017)
Старый 30.06.2017, 14:25   #8
AndrianoS
Пользователь
 
Регистрация: 21.08.2009
Адрес: Санкт-Петербург
Сообщений: 51
Сказал(а) спасибо: 46
Поблагодарили 9 раз(а) в 6 сообщениях
Вес репутации: 109
AndrianoS на пути к лучшему
По умолчанию

Не знаю как у других,у меня одно большое КАК?Вышли новые инструменты,новые возможности.Что это такое,как настраивать,как устанавливать,как с этим работать и что это дает.Если есть возможность записать видео,то это было бы очень круто.
AndrianoS вне форума   Ответить с цитированием Вверх
Старый 21.07.2017, 15:38   #9
Klim Bassenger
Пользователь
 
Аватар для Klim Bassenger
 
Регистрация: 15.02.2010
Сообщений: 42
Сказал(а) спасибо: 8
Поблагодарили 21 раз(а) в 10 сообщениях
Вес репутации: 104
Klim Bassenger на пути к лучшему
По умолчанию

function ArrangePositions() {
if (Action.Control.Owner.Owner.dpModelTree.Visible == False) {
Action.Control.Owner.Owner.a3ModelTreeExecute();
}
if(confirm('Будет выполнена расстановка позиций. Продолжить?')) {
if (Action.Control.Owner.Owner.dpModelTree.Visible == True) {
Action.Hint = 'Расстановка позиций...';
Action.Control.Owner.Owner.dpModelTree.Controls[1].BtnArrangeClick();
return True;
}
else {
alert('Закрыт инструмент <Структура модели>!');
}
} else {
alert('Отменено пользователем!');
}
return False;
}

У меня тоже перестал работать скрипт, который постоянно использую.
Пишет ошибку:
TypeError: Cannot read property 'Visible' of undefined
(см. картинку).
Может есть тут гуру скриптов, которые смогут помочь "подкрутить скрипт".
Миниатюры
Ошибка.jpg  
__________________
Если бы Бог хотел, чтобы мы думали только головой, он бы сделал нас колобками.
Klim Bassenger вне форума   Ответить с цитированием Вверх
Старый 21.07.2017, 16:01   #10
Klim Bassenger
Пользователь
 
Аватар для Klim Bassenger
 
Регистрация: 15.02.2010
Сообщений: 42
Сказал(а) спасибо: 8
Поблагодарили 21 раз(а) в 10 сообщениях
Вес репутации: 104
Klim Bassenger на пути к лучшему
По умолчанию

На самом деле немного странное решение с новым движком для скриптов. У многих, я знаю, почти вся работа завязана на скриптах.
Им теперь получается всё переписывать заново? Вроде бы никто не писал, что что-то не устраивает. Зачем были эти нововведения, когда ТП отвечает, мол мы возможность скриптов сделали - а дальше сами думайте как с этим работать.
Может есть какой-то шаблон по переводу скриптов на новый движок? Может переменный как-то по другому объявлять или синтаксис поменять....
__________________
Если бы Бог хотел, чтобы мы думали только головой, он бы сделал нас колобками.
Klim Bassenger вне форума   Ответить с цитированием Вверх
2 пользователя(ей) сказали cпасибо:
potomu4to (12.08.2017), v22884 (02.09.2017)
Ответ

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

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

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

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

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

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


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


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