AutoCAD Plant 3D General DIscussion

AutoCAD Plant 3D General DIscussion

Reply
Valued Contributor
51 Posts
5 Kudos
Registered: ‎06-20-2011
Post 1 of 4

plant report creator

364 Views, 3 Replies
02-11-2013 01:00 AM

hello

 

is it possible to had 20% on subtotale for part

 

for exemple when the report say you have 10 elbow 90°.. i need in an other columns it say 12 elbow 90°... 

 

because the report is the exact numbur of part but when we ship material we need more parts... 

 

i don't know if it's clear..

 

thank you

*Expert Elite*
739 Posts
143 Kudos
Registered: ‎12-04-2009
Post 2 of 4

Re: plant report creator

02-11-2013 06:45 AM in reply to: patpat78

Yes, you could do it using scripts. Look at the default 3d parts BOM and open the scripts section.  There is a function they use to get the total that will be used.  You can replace the two function below (feetInchesFromObject and tableCell4_SummaryCalculated) with the code below.

 

I've modified the function to return 120% of the items, and made it so any fractional value round up to 1", this part just affects the piping.

 

// Return the specified object as a double value formatted
// into feet and inches.
//
private string
feetInchesFromObject(object obj)
{

UsedFeetandInches = true;
System.Diagnostics.Debug.Assert(
obj != null,
/*NOXLATE*/"feetInchesFromObject: obj parameter is null");
if (obj == null)
return string.Empty;

double value = System.Convert.ToDouble(obj);
//add fudge factor to the double
value = 1.2 * value;
// Round the initial value to three decimal places
// to avoid borderline rounding cases than would
// have resulted in very small or very large fractional
// inches.
double inchesFull = System.Math.Round(value % 12, 3);
double inchesOnly = System.Math.Truncate(inchesFull);

//round up the inches if there are any fractional left overs from our fudge factor
if(inchesFull - inchesOnly > 0)
inchesOnly++;
// Compute the fractional inches, if any.
string fracText = string.Empty;
double frac = inchesFull - inchesOnly;

//make sure there are no fractional values

frac =0;
if (frac > 0.0) {
fracText = string.Format(
/*NOXLATE*/" 1/{0}",
System.Math.Round(1 / frac)
);
}

// We always include the feet and inches.
// The fractional inches are optional.
return string.Format(
/*NOXLATE*/"{0}'-{1}{2}\"",
System.Math.Truncate(value / 12),
System.Convert.ToString(inchesOnly),
fracText
);
}

 

private void
tableCell4_SummaryCalculated(
object sender,
DevExpress.XtraReports.UI.TextFormatEventArgs e)
{
UsedFeetandInches = false;
textFeetInchesIfColumnImperial(/*NOXLATE*/"MeasureUnit", e);
//don't do anything if we already calculated the feet and inches
if(UsedFeetandInches)
return;
//get the value
double sum = System.Convert.ToDouble(e.Text);
//add our fudge factor, and round up to the nearest integer ie 2.1 goes up to 3;
e.Text = Math.Ceiling(sum * 1.2).ToString();


}
bool UsedFeetandInches;

Dave Wolfe
Isaiah 57:15

ECAD, Inc.
Tips and Tricks on our blog: Process Design, from the Outside

A P3D Authorized Reseller
Plant 3d Wish list: https://plant3d.uservoice.com/
Valued Contributor
51 Posts
5 Kudos
Registered: ‎06-20-2011
Post 3 of 4

Re: plant report creator

02-13-2013 08:19 AM in reply to: dave.wolfe

hello 

 

thank's for your answer 

 

i copy paste the script but it say erraor on line 57 any idea ?

*Expert Elite*
739 Posts
143 Kudos
Registered: ‎12-04-2009
Post 4 of 4

Re: plant report creator

02-13-2013 08:31 AM in reply to: patpat78

Try substituting this in the summary calculated section

 

where it says:


//get the value
double sum = System.Convert.ToDouble(e.Text);
//add our fudge factor, and round up to the nearest integer ie 2.1 goes up to 3;
e.Text = Math.Ceiling(sum * 1.2).ToString();

 

use this:

 

//get the value

double sum = 0.0;

try{

sum = System.Convert.ToDouble(e.Text);//add our fudge factor, and round up to the nearest integer ie 2.1 goes up to 3;
e.Text = Math.Ceiling(sum * 1.2).ToString();

catch{

//do nothing if we couldn't convert to a double

}

Dave Wolfe
Isaiah 57:15

ECAD, Inc.
Tips and Tricks on our blog: Process Design, from the Outside

A P3D Authorized Reseller
Plant 3d Wish list: https://plant3d.uservoice.com/
Post to the Community

Have questions about Autodesk products? Ask the community.

New Post
Need installation help?

Start with some of our most frequented solutions to get help installing your software.

New AutoCAD Plant 3D Category!

The AutoCAD Plant 3D forum has moved into it's very own category page, and can no longer be found within the Additional Product Forums.

Announcements
Are you interested in helping shape the future of the Autodesk Community? To participate in this brief usability study, please click here. Your time and input is greatly appreciated!