Перейти к содержимому


Фотография

Pronest 2019 Отчет. Стоимость производства

Отчет ProNest

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 26

#1 OFFLINE   Volpro

Volpro

    Абитуриент

  • Пользователи
  • Pip
  • 1 сообщений
  • Пол:Мужчина
  • Из:Москва

Отправлено 05 Май 2020 - 15:43

Доброго времени суток всем. Возник вопрос по поводу вывода отчетов,а точнее расчета стоимости производства. Она формируется из множества критериев. Нам известна длина реза, количество проколов. Можно как то просто перемножить длину на цену за метр (Стоимость производства=длина разреза*цена реза 1 метра). Пробовал в редакторе текста ставить формулу, но ничего не получается. Может кто то решил данный вопрос. 


  • 0

#2 OFFLINE   S.Martynov

S.Martynov

    Бакалавр CNC

  • Продвинутый
  • PipPipPip
  • 265 сообщений
  • Пол:Мужчина
  • Интересы:FastReport, VBA
  • Из:Р

Отправлено 12 Май 2020 - 11:49

[<Nest."dCutLength">*<Nest."cTimesCut">*25.4/1000*цена]


  • 0

#3 OFFLINE   S.Martynov

S.Martynov

    Бакалавр CNC

  • Продвинутый
  • PipPipPip
  • 265 сообщений
  • Пол:Мужчина
  • Интересы:FastReport, VBA
  • Из:Р

Отправлено 12 Май 2020 - 19:33

Можно в базе данных материалов, в заметках ввести цену на данный материал и тогда более удобно будет на каждый материал своя цена 

[<Nest."dCutLength">*<Nest."cTimesCut">*25.4/1000*<PlateMaterial."sRemarks">]

 

Прикрепленные изображения

  • 2020-05-12_163054.png

  • 0

#4 OFFLINE   Rb22

Rb22

    Абитуриент

  • Пользователи
  • Pip
  • 1 сообщений
  • Пол:Мужчина
  • Из:РФ

Отправлено 10 Август 2022 - 12:22

Доброго времени суток всем. Возник вопрос по поводу вывода отчетов,а точнее расчета стоимости производства. Она формируется из множества критериев. Нам известна длина реза, количество проколов. Можно как то просто перемножить длину на цену за метр (Стоимость производства=длина разреза*цена реза 1 метра). Пробовал в редакторе текста ставить формулу, но ничего не получается. Может кто то решил данный вопрос. 

Добрый день! Подскажите пожалуйста, мне тоже актуально поставить цену (Стоимость производства=длина разреза*цена реза 1 метра в зависимости от толщины металла). Подскажите [<Nest."dCutLength">*<Nest."cTimesCut">*25.4/1000*<PlateMaterial."sRemarks">] куда это необходимо прописать. P.S за ранее благородствую.


  • 0

#5 OFFLINE   ater14

ater14

    Студент

  • Пользователи+
  • PipPip
  • 15 сообщений
  • Пол:Мужчина
  • Из:Минск

Отправлено 23 Август 2023 - 16:53

Можно в базе данных материалов, в заметках ввести цену на данный материал и тогда более удобно будет на каждый материал своя цена 

[<Nest."dCutLength">*<Nest."cTimesCut">*25.4/1000*<PlateMaterial."sRemarks">]

 

 

[**25.4/1000*]"sremarks">"ctimescut">"dcutlength">

 

 Вставляю эту формулу, пишет такую ошибку (Были обнаружены следующие ошибки: NestdCutLength: Could not convert variant of type (UnicodeString) info type (Double)), подскажете как поправить?


  • 0

#6 OFFLINE   S.Martynov

S.Martynov

    Бакалавр CNC

  • Продвинутый
  • PipPipPip
  • 265 сообщений
  • Пол:Мужчина
  • Интересы:FastReport, VBA
  • Из:Р

Отправлено 23 Август 2023 - 22:43

 Вставляю эту формулу, пишет такую ошибку (Были обнаружены следующие ошибки: NestdCutLength: Could not convert variant of type (UnicodeString) info type (Double)), подскажете как поправить?

 

Можно поподробней что именно вы вставляете и куда?

 

 

Rb22 сказал(а) 10 Авг 2022 - 08:22:

snapback.png

[**25.4/1000*]"sremarks">"ctimescut">"dcutlength">

тут я вообще формулы не вижу, одна сплошная ошибка


  • 1

#7 OFFLINE   ater14

ater14

    Студент

  • Пользователи+
  • PipPip
  • 15 сообщений
  • Пол:Мужчина
  • Из:Минск

Отправлено 24 Август 2023 - 18:18

Можно поподробней что именно вы вставляете и куда?


[<Nest."dCutLength">*<Nest."cTimesCut">*25.4/1000*<PlateMaterial."sRemarks">] вставляю эту формулу в стандартный отчёт, да и в не стандартный так же пробовал, пишет одну и ту же ошибку. NestdCutLength: Could not convert variant of type (UnicodeString) info type (Double)
  • 0

#8 OFFLINE   S.Martynov

S.Martynov

    Бакалавр CNC

  • Продвинутый
  • PipPipPip
  • 265 сообщений
  • Пол:Мужчина
  • Интересы:FastReport, VBA
  • Из:Р

Отправлено 25 Август 2023 - 00:29

[<Nest."dCutLength">*<Nest."cTimesCut">*25.4/1000*<PlateMaterial."sRemarks">] вставляю эту формулу в стандартный отчёт, да и в не стандартный так же пробовал, пишет одну и ту же ошибку. NestdCutLength: Could not convert variant of type (UnicodeString) info type (Double)

 

Полагаю у вас стоимость в заметках материала (<PlateMaterial."sRemarks">)  указана  с точкой "."  вместо запятой ",".   например: 210.5   а должно быть 210,5

 

должны быть только цифры  и можно при желании разделять запятой

 

ну или вообще ничего нет в заметке, поэтому и ошибка, что нельзя умножить на текст

 

 

вот так можно сделать если не указана число стоимости в заметке материала

 

[IIF(<PlateMaterial."sRemarks"><>'',<Nest."dCutLength">*<Nest."cTimesCut">*25.4/1000,'')]

 

если нет значения ошибки не будет


Сообщение отредактировал S.Martynov: 25 Август 2023 - 00:43

  • 1

#9 OFFLINE   ater14

ater14

    Студент

  • Пользователи+
  • PipPip
  • 15 сообщений
  • Пол:Мужчина
  • Из:Минск

Отправлено 25 Август 2023 - 13:02

Супер, дело было в точке. Поменял точку на запятую и всё заработало. Спасибо.
Есть только один нюанс, как только добавляю в раскрой более 1 детали, в отчёт подтягиваются данные только из первой детали,
можете помочь разобраться что сделал не так? прикрепил отчёт
ещё вопрос: можно ли это значение сделать округлённым до сотых?
заранее благодарю

Прикрепленные файлы


  • 0

#10 OFFLINE   S.Martynov

S.Martynov

    Бакалавр CNC

  • Продвинутый
  • PipPipPip
  • 265 сообщений
  • Пол:Мужчина
  • Интересы:FastReport, VBA
  • Из:Р

Отправлено 26 Август 2023 - 13:38

Есть только один нюанс, как только добавляю в раскрой более 1 детали, в отчёт подтягиваются данные только из первой детали,
можете помочь разобраться что сделал не так? прикрепил отчёт
ещё вопрос: можно ли это значение сделать округлённым до сотых?
заранее благодарю

Доброе, скорректировал, во вложении расчет резки конкретно деталей, можно без раскладки по листам, просто добавить детали в список

Прикрепленные файлы


  • 2

#11 OFFLINE   ater14

ater14

    Студент

  • Пользователи+
  • PipPip
  • 15 сообщений
  • Пол:Мужчина
  • Из:Минск

Отправлено 29 Август 2023 - 12:03

О, супер, спасибо большое)
  • 0

#12 OFFLINE   ater14

ater14

    Студент

  • Пользователи+
  • PipPip
  • 15 сообщений
  • Пол:Мужчина
  • Из:Минск

Отправлено 29 Август 2023 - 16:50

Доброе, скорректировал, во вложении расчет резки конкретно деталей, можно без раскладки по листам, просто добавить детали в список

Ещё раз огромное спасибо, очень сильно выручаете. Есть один вопрос: в графе материалов есть свободные ячейки такие как: цена за кг, групповой код и т.д., скажите можно ли задействовать эти ячейки для дальнейшего расчёта? Пример расчёта стоимости: вес прямоугольной области детали * стоимость материала за кг. Примерно так: [<Material."sGroupCode">*<MtcFormatWeight<Part."dRectangularWeight">>]  ['руб']. (групповой код, т.к. не нашёл функцию стоимости материла). Естественно т.к вообще не бум-бум в FastReport, формула не работает. 

Прошу вас как Гуру отчётов помочь на финальной стадии)


Сообщение отредактировал ater14: 29 Август 2023 - 16:50

  • 0

#13 OFFLINE   S.Martynov

S.Martynov

    Бакалавр CNC

  • Продвинутый
  • PipPipPip
  • 265 сообщений
  • Пол:Мужчина
  • Интересы:FastReport, VBA
  • Из:Р

Отправлено 29 Август 2023 - 23:07

Ну может попробовать использовать:

[<PlateMaterial."sChemicalComposition">]  - Химическая компания
[<PlateMaterial."sGroupCode">]   -Групповой код
 

 

Пример расчёта стоимости: вес прямоугольной области детали * стоимость материала за кг. Примерно так: [<Material."sGroupCode">*<MtcFormatWeight<Part."dRectangularWeight">>]  ['руб']. (групповой код, т.к. не нашёл функцию стоимости материла)

[<Part."dRectangularWeight">*0.453592*<PlateMaterial."sChemicalComposition">]

 

 

- цену за кг в Хим компанию


Сообщение отредактировал S.Martynov: 29 Август 2023 - 23:09

  • 1

#14 OFFLINE   ater14

ater14

    Студент

  • Пользователи+
  • PipPip
  • 15 сообщений
  • Пол:Мужчина
  • Из:Минск

Отправлено 30 Август 2023 - 14:28

Всё работает. Отлично. Спасибо вам огромное.
  • 0

#15 OFFLINE   S.Martynov

S.Martynov

    Бакалавр CNC

  • Продвинутый
  • PipPipPip
  • 265 сообщений
  • Пол:Мужчина
  • Интересы:FastReport, VBA
  • Из:Р

Отправлено 30 Август 2023 - 22:38

Всё работает. Отлично. Спасибо вам огромное.

При желании можно в одной строке все записать через разделения

а потом через Copy(,,)  и Pos(,)  записать значения в пользовательские переменные и использовать в расчетах

например:

 

расшифровка информации из имени файла эл-ки:

 

6-Ст3сп-5 №-1   10 шт  #Заглушка (RD)@КЕ.001.008.001##Склад №3^17.02.2023%26.08.2023$КЕ.001.008.001.dxf

 

 

пользовательские переменные

 

p1)       Pos('#',<fname>)
 
p2)       Pos('##',<fname>)
 
p3)       Pos('$',<fname>)
 
p4)       Length(<fname>)
 
заказ)                             Copy(<fname>,<p2>+2,Pos('^',<fname>)-<p2>-2)
 
номер_деталь_dxf)       Copy(<fname>,<p3>+1,<p4>-<p3>)
 
DD1)                              Copy(<fname>,Pos('^',<fname>) +1,Pos('%',<fname>)-Pos('^',<fname>)-1)
 
DD2)                              Copy(<fname>,Pos('%',<fname>)+1,Pos('$',<fname>)-Pos('%',<fname>)-1)
 
pp)                                 Copy(<fname>,<p1>+1,pos('@',<fname>)-<p1>-1)+ ' '
 
pn)                                 Copy(<fname>,Pos('@',<fname>) +1,Pos('##',<fname>)-Pos('@',<fname>)-1)
 
fname)                           IIF(Pos('$',<Part."sFileName">)<>0 ,Copy(<Part."sFileName">,Length(ExtractFilePath(<Part."sFileName">))+1,Length(<Part."sFileName">)-Length(ExtractFilePath(<Part."sFileName">))-4),Copy(<Part."sName">,Length(ExtractFilePath(<Part."sName">)),Length(<Part."sName">)-Length(ExtractFilePath(<Part."sName">))))
 
в данном случае информация уже извлекается из пути файла

Сообщение отредактировал S.Martynov: 30 Август 2023 - 22:53

  • 1

#16 OFFLINE   ater14

ater14

    Студент

  • Пользователи+
  • PipPip
  • 15 сообщений
  • Пол:Мужчина
  • Из:Минск

Отправлено 01 Сентябрь 2023 - 13:14

УУУ, всёёё, нанотехнологии пошли, это уже не осилю. Мне потом на работе скажут программист, и в бухгалтерию отправят разбираться почему у Гали принтер не печатает.
На самом деле не сильно понял применение. 
6-Ст3сп-5 №-1   10 шт  #Заглушка (RD)@КЕ.001.008.001##Склад №3^17.02.2023%26.08.2023$КЕ.001.008.001.dxf
Я создаю имя файла выше, а потом по формуле (-IIF(Pos('$',<Part."sFileName">)<).и т.д.    .информация в отчёт подтягивается из неё?
  • 0

#17 OFFLINE   S.Martynov

S.Martynov

    Бакалавр CNC

  • Продвинутый
  • PipPipPip
  • 265 сообщений
  • Пол:Мужчина
  • Интересы:FastReport, VBA
  • Из:Р

Отправлено 01 Сентябрь 2023 - 21:16

На самом деле не сильно понял применение.
6-Ст3сп-5 №-1 10 шт #Заглушка (RD)@КЕ.001.008.001##Склад №3^17.02.2023%26.08.2023$КЕ.001.008.001.dxf
Я создаю имя файла выше, а потом по формуле (-IIF(Pos('$',<Part."sFileName">)<).и т.д. .информация в отчёт подтягивается из неё?

Добрый день!

Ну к примеру вы записали в <PlateMaterial."sRemarks"> не просто число а два числа или более через какой-нибудь разделитель например "/" тоесть запись в заметки материала 150,5/45,8 - два числа

формула для извлечения первого числа - [IIF(Pos('/',<PlateMaterial."sRemarks">)<>0,Copy(<PlateMaterial."sRemarks">,1,Pos('/',<PlateMaterial."sRemarks">)-1),'')]

для второго числа - [IIF(Pos('/',<PlateMaterial."sRemarks">)<>0,Copy(<PlateMaterial."sRemarks">,Pos('/',<PlateMaterial."sRemarks">)+1,Length(<PlateMaterial."sRemarks">)-Pos('/',<PlateMaterial."sRemarks">)+1),'')]

эти формулы можно добавить в переменные определенные пользователем, обозвать как вам угодно, и использовать в отчете, только в переменные нужно записывать без квадратных скобок [ и ]

тоесть запись переменной:

имя переменной к примеру: цена_за_кг

значение переменной : IIF(Pos('/',<PlateMaterial."sRemarks">)<>0,Copy(<PlateMaterial."sRemarks">,1,Pos('/',<PlateMaterial."sRemarks">)-1),'')


и в отчете уже используем как <цена_за_кг>

и вторую также добавляем в переменные ,б прописываем формулу


я к тому, что можно в одном поле записать несколько значений и разбить их на нужные
  • 1

#18 OFFLINE   ater14

ater14

    Студент

  • Пользователи+
  • PipPip
  • 15 сообщений
  • Пол:Мужчина
  • Из:Минск

Отправлено 04 Сентябрь 2023 - 13:39

Здраствуйте, понял, нужная функция, пригодится. Спасибо. Возник небольшой вопрос:
Есть две формулы: [<Part."dCutLength">*25.4/1000*<PlateMaterial."sRemarks">] ['руб'] и [<Part."dCutLength">*25.4/1000*<Part."cRequired">*<PlateMaterial."sRemarks">] ['руб'].
Из-за того что длина реза у нас не целое число,а например 3,23235465464 то есть небольшие разногласия в данных при добавлении нескольких позиций в раскрой.
Может быть можно как то побороть эту проблему, она конечно незначительная, речь идёт о десятой доли числа, просто хотелось что бы было всё точно.
Можно ли так сделать: в ячейке Мемо1 содержится формула [<Part."dCutLength">*25.4/1000*<PlateMaterial."sRemarks">] ['руб'], а вместо [<Part."dCutLength">*25.4/1000*<Part."cRequired">*<PlateMaterial."sRemarks">] сделать: [<Memo1>*<Part."cRequired">]???
p.s при расчёте по формуле [<Part."dRectangularWeight">*0.453592*<PlateMaterial."sChemicalComposition">*<Part."cRequired">] ['руб'] - стоимость материала, та же ситуация.
Ещё раз благодарю, и так помогли больше некуда.

Прикрепленные файлы


  • 0

#19 OFFLINE   MasterSplinter

MasterSplinter

    Гуру CNC

  • Cтарожил
  • PipPipPipPipPipPipPipPipPipPip
  • 1 980 сообщений
  • Пол:Мужчина
  • Из:г. Москва

Отправлено 04 Сентябрь 2023 - 14:16

Может кто то решил данный вопрос. 

 

Важное дополнение. Опыт подсказывает, что себестоимость действительно разумно расчитать по формулам учетом множества параметров.

Однако, важно не забыть после всех рассчетов, полученный результат умножить на коэффициент 1.22.

Это эмпирический коэффициент, который учитывает неучтенные факторы. Условно можно назвать коэффициентом усушки.


  • 0

У России только два союзника - дураки и дороги.


#20 OFFLINE   S.Martynov

S.Martynov

    Бакалавр CNC

  • Продвинутый
  • PipPipPip
  • 265 сообщений
  • Пол:Мужчина
  • Интересы:FastReport, VBA
  • Из:Р

Отправлено 05 Сентябрь 2023 - 02:51

хотелось что бы было всё точно.

Добрый вечер, скорректировал, в вложении

 

 

расчетную стоимость за единицу умножаем  на 100, округляем до целого и делим на 100, получается фиксированное значение стоимости которое можно умножать и получать четкое число

Прикрепленные файлы


Сообщение отредактировал S.Martynov: 05 Сентябрь 2023 - 02:58

  • 1





Темы с аналогичным тегами Отчет ProNest

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных