Jump to content
  • 1

Window Schedule Report: how to call up thickness of wall


Christiaan

Question

8 answers to this question

Recommended Posts

  • 0

The only "easy" way to do this would be to turn on the Use Wall Depth for the Jambs and then report the Jamb Depth.

 

IF this is for just your use, a worksheet script could be written that would find the parent of each window (the wall) and return the width. The problem is the script will have to live in every file OR will have to be installed on every VW installation that will ever recalculate the worksheet.

 

Alternatively, you could use a simple script to store the value of the wall thickness into one of the User Fields (or a custom record) and then use the standard worksheet functions to report it. But if you change a wall thickness and forget to run the script, then the data will be wrong.

 

To implement for an entire office is probably more trouble than it is worth. To implement for yourself might be reasonable.  

 

Let me know if you want help in making either of these options happen.

  • Like 1
Link to comment
  • 0

Thanks Pat, I knew you'd probably have the answer to this one.

 

4 hours ago, Pat Stanford said:

The only "easy" way to do this would be to turn on the Use Wall Depth for the Jambs and then report the Jamb Depth.

 

Not an option because jambs need to be set to real-world parameters.

 

4 hours ago, Pat Stanford said:

IF this is for just your use, a worksheet script could be written that would find the parent of each window (the wall) and return the width. The problem is the script will have to live in every file OR will have to be installed on every VW installation that will ever recalculate the worksheet.

 

I'm fine with that as we already use Workgroup folders to share resources, but putting in the file seems like a no brainer. 

 

4 hours ago, Pat Stanford said:

Alternatively, you could use a simple script to store the value of the wall thickness into one of the User Fields (or a custom record) and then use the standard worksheet functions to report it. But if you change a wall thickness and forget to run the script, then the data will be wrong.

 

That's also an interesting option, but probably better to go with the previous option.

 

4 hours ago, Pat Stanford said:

To implement for an entire office is probably more trouble than it is worth. To implement for yourself might be reasonable.  

 

Let me know if you want help in making either of these options happen.

 

A script to find the parent of each window and return the width would be hugely appreciated, thanks Pat.

 

It needs to look on the following design layers only:

4-Floor C1

3-Floor C1

2-Floor C1

1-Floor C1

G-Floor C1

3-Floor C2

2-Floor C2

1-Floor C2

G-Floor C2

Link to comment
  • 0

Try this script.  What shall we name it? I recommend naming it PIOWallThickness, but Bob is also nice. Let's use Bob.

 

Create a script Palette (probably one that will never be open and will just serve as a holding place in the file for worksheet scripts) it does not matter what the palette is named.  Create a new script in the palette and name it Bob. Copy the entire script from the code block below and paste it into Bob.

 

Go to your window schedule and add a new column.  Enter a formula of =RunScript(Bob). You will get a dialog box asking for permission to run scripts. Click Allow or Always Allow. I recommend Always Allow or else Bob will drive you crazy every time you recalculate the worksheet.

 

You should now end up with the thickness of the wall that the window (or any other PIO inserted in a wall) is inserted into. It will also tell you if a PIO is not inserted in a wall.

 

Procedure PIOWallThickness;

{January 22, 2020}
{©2020 Patrick Stanford pat@coviana.com}
{Licensed under the GNU Lesser General Public License}

{Worksheet Script to return the thickness of the wall an object is inserted into}
{No warranty expressed or implied. Use at your own risk.}
{Backup and test for suitabilty for your use.}
{There be Dragons. Disconinue use if headache of more than 4 hours occurs.}


Var	H1,H2		:Handle;
	R1			:Real;
	B1			:Boolean;
	
Begin
	H1:=WSScript_GetObject;			{Handle to object specified by database row}
	H2:=GetParent(H1);				{Handle to the parent of the H1 object}
	If GetTypeN(H2)=68 then 
		Begin
			B1:=GetWallThickness(H2,R1);
			WSScript_SetResReal(R1);
		End
	Else
		WSScript_SetResStr('Not in Wall');
End;

Run(PIOWallThickness);

 

 

 

 

  • Like 1
  • Love 1
Link to comment
  • 0

Hi all,

 

I was in a private conversation with Christiaan, in regards to some schedule personalisation and was wondering if anyone knows a way (formula Excel like) to read information from a record on a different symbol, but the location of this Formula to be placed would be like in the USER FIELD inside the window? 


Eg. having a Window Sill symbol with a record attached and while in the Window tool, under a user field place a formula that would read the information from the Window Sill symbol record, that then when in the schedule it would publish that information when we make it to read that User Field.

 

Does this make sense?

 

Note: @Pat Stanford I see you're a bit of a scripter yourself have you got any idea if this is even possible?

Link to comment
  • 0

If you don't care about where the formula is, but rather just want the results of the formula to go into the User Field, you may be able to use the Data Manager to perform the calculation and store the data. That should be "automagic" and the data SHOULD update when the sill is changed, but how are you going to specify what the Sill is? It sounds like you would be better off just storing the Sill information and then figuring out how to use that to get the information from the Sill record when you create the schedule.

 

That lookup may require a Worksheet Script, but I think I already wrote one that looks up data from a different object, so it shouldn't be too hard.

 

With a straight script, there is no way to keep the data synced.  Everything a Sill was changed you would need to re-run the script to make sure the data is current.

Link to comment
  • 0
15 hours ago, Pat Stanford said:

If you don't care about where the formula is, but rather just want the results of the formula to go into the User Field, you may be able to use the Data Manager to perform the calculation and store the data. That should be "automagic" and the data SHOULD update when the sill is changed, but how are you going to specify what the Sill is? It sounds like you would be better off just storing the Sill information and then figuring out how to use that to get the information from the Sill record when you create the schedule.

 

That lookup may require a Worksheet Script, but I think I already wrote one that looks up data from a different object, so it shouldn't be too hard.

 

With a straight script, there is no way to keep the data synced.  Everything a Sill was changed you would need to re-run the script to make sure the data is current.

 

Thanks for the Reply Pat,

 

To specify what the Sill would be, that is done on the Sill record that is attached to the symbol, like model, colour, material finish and so on, that would then depending of what you would want to show let's just say the colour and finish, you would then use two formulas to get that information to User field 1 and 2 in the window so then on the window Style would come up, and you do this to different styles of windows and sills. 

 

Where would you go and set up that information on the Data Manager? 

Note: I was thinking this option might work as I use window styles to do the Window schedules and when I saw how Christiaan was using the Sill as a separate Sill as a symbol because let's face it the Sill in the window tool does not satisfy all of our options and is quite outdated I was trying to think how we could report it to the window schedule and " show it belonging to that window style" if this makes sense?

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...