Форум профессиональных мебельщиков PROMEBELclub

Форум профессиональных мебельщиков PROMEBELclub (https://промебельклуб.рф/forum/index.php)
-   Базис-мебельщик. Скрипты (https://промебельклуб.рф/forum/forumdisplay.php?f=273)
-   -   БАЗИС 11-2024 - Скрипты (https://промебельклуб.рф/forum/showthread.php?t=14883)

rombler 14.01.2020 12:54

Пазы
 
Хочу скриптом создавать пазы (фрезеровку на фасаде). Подскажите возможно ли одним и тем же профилем фрезы создавать пазы разной глубины?
Нашел лишь команду Cut.Contour.Move(0, Dver.Thickness);
Но при замене 0 на другое число сдвигается траектория в сторону а не вглубь.

Letos 14.01.2020 14:20

Цитата:

Сообщение от rombler (Сообщение 490062)
Хочу скриптом создавать пазы (фрезеровку на фасаде). Подскажите возможно ли одним и тем же профилем фрезы создавать пазы разной глубины?
Нашел лишь команду Cut.Contour.Move(0, Dver.Thickness);
Но при замене 0 на другое число сдвигается траектория в сторону а не вглубь.

Move имеет 2 параметра - смещение по Х и смещение по У. Вам, скорее всего, нужно писать Cut.Contour.Move(0, Dver.Thickness - dy);? где dy - смещение по У, а знак минус я предположил потому, что смещение уже в плюс по толщине объекта Dver.

IStiv 14.01.2020 18:11

Цитата:

Сообщение от mihey2011 (Сообщение 490043)
нужно прописать условие в базис смета, подскажите знающие люди.

Вам следует начать с корректной постановки задачи.
из написанного Вами очень маловероятно что кто то сможет сделать скрипт.
четко в терминах БМ расписываем какие элементы в каком порядке нужно проверить по имени, как вводится имя (или оно зашито в скрипте) и что нужно делать если имя нашлось.

mihey2011 14.01.2020 19:53

Спасибо, дома ключа нет, завтра с утра на работе попробую.

Добавлено через 4 минуты
Цитата:

Сообщение от Letos (Сообщение 490051)
Меня немного смутила фраза "в названии модели". Учитывая, что весь код относится к панели, я решил, что имелась в виду панель. Для панели проверка имени на наличие ключевого слова будет выглядеть так:
Код HTML:

[PHP]
var keyword = 'КУБИК';
if (Panel.Name.indexOf(keyword) >= 0){
    // Сюда приходит, если имя панели содержит ключевую фразу
}[/PHP]


Добавлено через 12 минут
Цитата:

Сообщение от IStiv (Сообщение 490067)
Вам следует начать с корректной постановки задачи.
из написанного Вами очень маловероятно что кто то сможет сделать скрипт.
четко в терминах БМ расписываем какие элементы в каком порядке нужно проверить по имени, как вводится имя (или оно зашито в скрипте) и что нужно делать если имя нашлось.

Значит я имел в виду помочь составить условие, остальное я сам вставлю. Я код читать в принципе немножко умею, а что писать не знаю. Мои знания это CTRL+C, CTRL+V + плюс вставка своих параметров. Я синтаксиса не понимаю, с этими скобками вечно путаюсь, а когда есть конкретный пример то все гораздо проще.

mihey2011 14.01.2020 20:36

Цитата:

Сообщение от Letos (Сообщение 490051)
Для панели проверка имени на наличие ключевого слова будет выглядеть так:
PHP код:

var keyword 'КУБИК';
if (
Panel.Name.indexOf(keyword) >= 0){
    
// Сюда приходит, если имя панели содержит ключевую фразу



Да, все получилось, вот такой код получился
Код HTML:

var keyword = 'КУБИК';
if (Panel.Name.indexOf(keyword) >= 0){
    if(((GetParam('(25)Количество резов панели по дуге')+GetParam('(26)Количество резов панели под углом')+GetParam('(76)Количество выемок')) >= 0)){
Result = GetParam('(17)Количество торцевых отверстий')+50;
}
}

А не подскажите как будет выглядеть условие на текстовое пользовательское свойство к панели?

Letos 15.01.2020 09:37

Цитата:

Сообщение от mihey2011 (Сообщение 490074)
А не подскажите как будет выглядеть условие на текстовое пользовательское свойство к панели?

PHP код:

var name 'Имя польз. св-ва';
var 
value 'Значение польз. св-ва';
if (
panel.UserProperty[name] == value){
    
//Здесь код обработки, что значение пользовательского свойства <name> соответствует <value>



mihey2011 15.01.2020 10:10

Цитата:

Сообщение от Letos (Сообщение 490095)
PHP код:

var name 'Имя польз. св-ва';
var 
value 'Значение польз. св-ва';
if (
panel.UserProperty[name] == value){
    
//Здесь код обработки, что значение пользовательского свойства <name> соответствует <value>



Спасибо большое, но что-то не работает

IStiv 15.01.2020 18:10

Добавлено через 12 минут
Цитата:

Сообщение от mihey2011 (Сообщение 490097)
Спасибо большое, но что-то не работает

сперва хорошо бы, проверить а есть ли вообще такое пользовательское свойство.

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

PHP код:

var name 'Имя польз. св-ва';
var 
value 'Значение польз. св-ва';
if(
panel.UserProperty[name] != undefined){ 
    if (
panel.UserProperty[name] == value){
      
//Здесь код обработки, что значение пользовательского свойства <name> соответствует <value>
  

}
else{
  
alert("такого свойства нет в панели" panel.Name );


[свернуть]

====
эм. fs.statSync(); не работает.
в чем м.б. проблема? @Letos

PHP код:

var fs = require('fs');
var 
pth "какой то путь";
var 
statefs.statSync(pth); 
var 
="это не выполниться"


Letos 16.01.2020 10:11

Цитата:

Сообщение от IStiv (Сообщение 490114)
эм. fs.statSync(); не работает.
в чем м.б. проблема? @Letos

PHP код:

var fs = require('fs');
var 
pth "какой то путь";
var 
statefs.statSync(pth); 
var 
="это не выполниться"


У себя проверил на существующем файле - нормально. Оно может выдавать ошибку ENOENT: no such file or directory, если файла не существует.
Лучше будет сделать так:
PHP код:

var fs = require('fs');
var 
pth "какой то путь";
var 
state null;
if (
fs.existsSync(pth))
    
state fs.statSync(pth);
var 
="это не выполниться"

Если и в таком случае не заработает - пришлите, что за ошибку выдаёт в логе.

rombler 16.01.2020 14:12

Подскажите пожалуйста. Как настроить отладчик VScode если у меня демо версия базис мебельщик 11. Или же где найти демо базис мебельщик 10.


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

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
© 2007-2023 PROMEBEL