Drawings
Drawing_Get
Description: Retrieves drawings from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<Drawing_Get/>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<Drawing_Get>
<Successful>true</Successful>
<Drawing>
<DrawingID>123</DrawingID>
<DrawingName>Drawing 1</DrawingName>
</Drawing>
<Drawing>
<DrawingID>456</DrawingID>
<DrawingName>Drawing 2</DrawingName>
</Drawing>
</Drawing_Get>
</FabSuiteXMLResponse>
Code Example:
//declare the request object
reqPowerFabAPI.fsreqFabSuiteXMLRequest request = new reqPowerFabAPI.fsreqFabSuiteXMLRequest();
request.ConnectionGUID = connectionGUID; // make sure to set the ConnectionGUID, value returned from the initial ConnectRemote command.
reqPowerFabAPI.fsreqDrawing_Get getDrawingsCommand = new reqPowerFabAPI.fsreqDrawing_Get();
request.Drawing_Get = new List<reqPowerFabAPI.fsreqDrawing_Get>();
request.Drawing_Get.Add(getDrawingsCommand);
//execute the command and get the response object
resPowerFabAPI.fsresFabSuiteXMLResponse response = executeCommand(request);
//first check for an XMLError element
if (response.XMLError!= null && response.XMLError.Count > 0)
MessageBox.Show(response.XMLError); //fatal error
else
{
//The get the Drawing_Get response object and check if it was successful
resPowerFabAPI.fsresDrawing_Get getDrawingsResponse = response.Drawing_Get.First();
if (!getDrawingsResponse.Successful)
MessageBox.Show(getDrawingsResponse.ErrorMessage); //command failed
else
{
// command successful, show the drawings
List<resPowerFabAPI.fsresDrawing> drawings = getDrawingsResponse.Drawing;
string drawingsString = "";
foreach (resPowerFabAPI.fsresDrawing drawing in drawings)
{
drawingsString += "Drawing ID:" + drawing.DrawingID.ToString() + ", Drawing Name: " + drawing.DrawingName + Environment.NewLine;
}
MessageBox.Show(drawingsString);
}
}
Notes:
- You can use filters to limit the drawings returned.
Drawing_Insert
Description: Inserts a new drawing into Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<Drawing_Insert>
<Drawing>
<DrawingName>Drawing 1</DrawingName>
<DrawingTypeID>1</DrawingTypeID>
<DrawingCategoryID>1</DrawingCategoryID>
<DrawingNumber>1</DrawingNumber>
<DrawingRevision>A</DrawingRevision>
<DrawingTitle>Drawing Title 1</DrawingTitle>
<DrawingDescription>Drawing Description 1</DrawingDescription>
<DrawingFileName>drawing1.pdf</DrawingFileName>
<DrawingFileContents>base64-encoded file contents</DrawingFileContents>
</Drawing>
</Drawing_Insert>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<Drawing_Insert>
<Successful>true</Successful>
<Drawing>
<DrawingID>123</DrawingID>
<DrawingName>Drawing 1</DrawingName>
</Drawing>
</Drawing_Insert>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingName,DrawingTypeID,DrawingCategoryID,DrawingNumber,DrawingRevision,DrawingTitle,DrawingDescription,DrawingFileName, andDrawingFileContentselements are required.
Drawing_Update
Description: Updates an existing drawing in Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<Drawing_Update>
<Drawing>
<DrawingID>123</DrawingID>
<DrawingName>Drawing 1</DrawingName>
<DrawingTypeID>1</DrawingTypeID>
<DrawingCategoryID>1</DrawingCategoryID>
<DrawingNumber>1</DrawingNumber>
<DrawingRevision>A</DrawingRevision>
<DrawingTitle>Drawing Title 1</DrawingTitle>
<DrawingDescription>Drawing Description 1</DrawingDescription>
<DrawingFileName>drawing1.pdf</DrawingFileName>
<DrawingFileContents>base64-encoded file contents</DrawingFileContents>
</Drawing>
</Drawing_Update>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<Drawing_Update>
<Successful>true</Successful>
<Drawing>
<DrawingID>123</DrawingID>
<DrawingName>Drawing 1</DrawingName>
</Drawing>
</Drawing_Update>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingID,DrawingName,DrawingTypeID,DrawingCategoryID,DrawingNumber,DrawingRevision,DrawingTitle,DrawingDescription,DrawingFileName, andDrawingFileContentselements are required.
Drawing_Delete
Description: Deletes one or more drawings from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<Drawing_Delete>
<DrawingID>123</DrawingID>
<DrawingID>456</DrawingID>
</Drawing_Delete>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<Drawing_Delete>
<Successful>true</Successful>
</Drawing_Delete>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- At least one
DrawingIDelement is required.
DrawingCategory_Get
Description: Retrieves drawing categories from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingCategory_Get/>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingCategory_Get>
<Successful>true</Successful>
<DrawingCategory>
<DrawingCategoryID>123</DrawingCategoryID>
<DrawingCategoryName>Drawing Category 1</DrawingCategoryName>
</DrawingCategory>
<DrawingCategory>
<DrawingCategoryID>456</DrawingCategoryID>
<DrawingCategoryName>Drawing Category 2</DrawingCategoryName>
</DrawingCategory>
</DrawingCategory_Get>
</FabSuiteXMLResponse>
Code Example:
//declare the request object
reqPowerFabAPI.fsreqFabSuiteXMLRequest request = new reqPowerFabAPI.fsreqFabSuiteXMLRequest();
request.ConnectionGUID = connectionGUID; // make sure to set the ConnectionGUID, value returned from the initial ConnectRemote command.
reqPowerFabAPI.fsreqDrawingCategory_Get getDrawingCategoriesCommand = new reqPowerFabAPI.fsreqDrawingCategory_Get();
request.DrawingCategory_Get = new List<reqPowerFabAPI.fsreqDrawingCategory_Get>();
request.DrawingCategory_Get.Add(getDrawingCategoriesCommand);
//execute the command and get the response object
resPowerFabAPI.fsresFabSuiteXMLResponse response = executeCommand(request);
//first check for an XMLError element
if (response.XMLError!= null && response.XMLError.Count > 0)
MessageBox.Show(response.XMLError); //fatal error
else
{
//The get the DrawingCategory_Get response object and check if it was successful
resPowerFabAPI.fsresDrawingCategory_Get getDrawingCategoriesResponse = response.DrawingCategory_Get.First();
if (!getDrawingCategoriesResponse.Successful)
MessageBox.Show(getDrawingCategoriesResponse.ErrorMessage); //command failed
else
{
// command successful, show the drawing categories
List<resPowerFabAPI.fsresDrawingCategory> drawingCategories = getDrawingCategoriesResponse.DrawingCategory;
string drawingCategoriesString = "";
foreach (resPowerFabAPI.fsresDrawingCategory drawingCategory in drawingCategories)
{
drawingCategoriesString += "Drawing Category ID:" + drawingCategory.DrawingCategoryID.ToString() + ", Drawing Category Name: " + drawingCategory.DrawingCategoryName + Environment.NewLine;
}
MessageBox.Show(drawingCategoriesString);
}
}
Notes:
- You can use filters to limit the drawing categories returned.
DrawingCategory_Insert
Description: Inserts a new drawing category into Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingCategory_Insert>
<DrawingCategory>
<DrawingCategoryName>Drawing Category 1</DrawingCategoryName>
</DrawingCategory>
</DrawingCategory_Insert>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingCategory_Insert>
<Successful>true</Successful>
<DrawingCategory>
<DrawingCategoryID>123</DrawingCategoryID>
<DrawingCategoryName>Drawing Category 1</DrawingCategoryName>
</DrawingCategory>
</DrawingCategory_Insert>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingCategoryNameelement is required.
DrawingCategory_Update
Description: Updates an existing drawing category in Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingCategory_Update>
<DrawingCategory>
<DrawingCategoryID>123</DrawingCategoryID>
<DrawingCategoryName>Drawing Category 1</DrawingCategoryName>
</DrawingCategory>
</DrawingCategory_Update>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingCategory_Update>
<Successful>true</Successful>
<DrawingCategory>
<DrawingCategoryID>123</DrawingCategoryID>
<DrawingCategoryName>Drawing Category 1</DrawingCategoryName>
</DrawingCategory>
</DrawingCategory_Update>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingCategoryIDandDrawingCategoryNameelements are required.
DrawingCategory_Delete
Description: Deletes one or more drawing categories from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingCategory_Delete>
<DrawingCategoryID>123</DrawingCategoryID>
<DrawingCategoryID>456</DrawingCategoryID>
</DrawingCategory_Delete>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingCategory_Delete>
<Successful>true</Successful>
</DrawingCategory_Delete>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- At least one
DrawingCategoryIDelement is required.
DrawingType_Get
Description: Retrieves drawing types from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingType_Get/>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingType_Get>
<Successful>true</Successful>
<DrawingType>
<DrawingTypeID>123</DrawingTypeID>
<DrawingTypeName>Drawing Type 1</DrawingTypeName>
</DrawingType>
<DrawingType>
<DrawingTypeID>456</DrawingTypeID>
<DrawingTypeName>Drawing Type 2</DrawingTypeName>
</DrawingType>
</DrawingType_Get>
</FabSuiteXMLResponse>
Code Example:
//declare the request object
reqPowerFabAPI.fsreqFabSuiteXMLRequest request = new reqPowerFabAPI.fsreqFabSuiteXMLRequest();
request.ConnectionGUID = connectionGUID; // make sure to set the ConnectionGUID, value returned from the initial ConnectRemote command.
reqPowerFabAPI.fsreqDrawingType_Get getDrawingTypesCommand = new reqPowerFabAPI.fsreqDrawingType_Get();
request.DrawingType_Get = new List<reqPowerFabAPI.fsreqDrawingType_Get>();
request.DrawingType_Get.Add(getDrawingTypesCommand);
//execute the command and get the response object
resPowerFabAPI.fsresFabSuiteXMLResponse response = executeCommand(request);
//first check for an XMLError element
if (response.XMLError!= null && response.XMLError.Count > 0)
MessageBox.Show(response.XMLError); //fatal error
else
{
//The get the DrawingType_Get response object and check if it was successful
resPowerFabAPI.fsresDrawingType_Get getDrawingTypesResponse = response.DrawingType_Get.First();
if (!getDrawingTypesResponse.Successful)
MessageBox.Show(getDrawingTypesResponse.ErrorMessage); //command failed
else
{
// command successful, show the drawing types
List<resPowerFabAPI.fsresDrawingType> drawingTypes = getDrawingTypesResponse.DrawingType;
string drawingTypesString = "";
foreach (resPowerFabAPI.fsresDrawingType drawingType in drawingTypes)
{
drawingTypesString += "Drawing Type ID:" + drawingType.DrawingTypeID.ToString() + ", Drawing Type Name: " + drawingType.DrawingTypeName + Environment.NewLine;
}
MessageBox.Show(drawingTypesString);
}
}
Notes:
- You can use filters to limit the drawing types returned.
DrawingType_Insert
Description: Inserts a new drawing type into Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingType_Insert>
<DrawingType>
<DrawingTypeName>Drawing Type 1</DrawingTypeName>
</DrawingType>
</DrawingType_Insert>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingType_Insert>
<Successful>true</Successful>
<DrawingType>
<DrawingTypeID>123</DrawingTypeID>
<DrawingTypeName>Drawing Type 1</DrawingTypeName>
</DrawingType>
</DrawingType_Insert>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingTypeNameelement is required.
DrawingType_Update
Description: Updates an existing drawing type in Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingType_Update>
<DrawingType>
<DrawingTypeID>123</DrawingTypeID>
<DrawingTypeName>Drawing Type 1</DrawingTypeName>
</DrawingType>
</DrawingType_Update>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingType_Update>
<Successful>true</Successful>
<DrawingType>
<DrawingTypeID>123</DrawingTypeID>
<DrawingTypeName>Drawing Type 1</DrawingTypeName>
</DrawingType>
</DrawingType_Update>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingTypeIDandDrawingTypeNameelements are required.
DrawingType_Delete
Description: Deletes one or more drawing types from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingType_Delete>
<DrawingTypeID>123</DrawingTypeID>
<DrawingTypeID>456</DrawingTypeID>
</DrawingType_Delete>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingType_Delete>
<Successful>true</Successful>
</DrawingType_Delete>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- At least one
DrawingTypeIDelement is required.
DrawingInputOptions_Get
Description: Retrieves drawing input options from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingInputOptions_Get/>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingInputOptions_Get>
<Successful>true</Successful>
<DrawingInputOptions>
<DrawingInputOption>
<DrawingInputOptionID>123</DrawingInputOptionID>
<DrawingInputOptionName>Drawing Input Option 1</DrawingInputOptionName>
</DrawingInputOption>
<DrawingInputOption>
<DrawingInputOptionID>456</DrawingInputOptionID>
<DrawingInputOptionName>Drawing Input Option 2</DrawingInputOptionName>
</DrawingInputOption>
</DrawingInputOptions>
</DrawingInputOptions_Get>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- You can use filters to limit the drawing input options returned.
DrawingFile_Get
Description: Retrieves drawing files from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingFile_Get>
<DrawingID>123</DrawingID>
</DrawingFile_Get>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingFile_Get>
<Successful>true</Successful>
<DrawingFile>
<DrawingFileID>123</DrawingFileID>
<DrawingFileName>Drawing File 1</DrawingFileName>
</DrawingFile>
<DrawingFile>
<DrawingFileID>456</DrawingFileID>
<DrawingFileName>Drawing File 2</DrawingFileName>
</DrawingFile>
</DrawingFile_Get>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingIDelement is required.
DrawingRevision_Get
Description: Retrieves drawing revisions from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingRevision_Get>
<DrawingID>123</DrawingID>
</DrawingRevision_Get>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingRevision_Get>
<Successful>true</Successful>
<DrawingRevision>
<DrawingRevisionID>123</DrawingRevisionID>
<DrawingRevisionName>Drawing Revision 1</DrawingRevisionName>
</DrawingRevision>
<DrawingRevision>
<DrawingRevisionID>456</DrawingRevisionID>
<DrawingRevisionName>Drawing Revision 2</DrawingRevisionName>
</DrawingRevision>
</DrawingRevision_Get>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingIDelement is required.
DrawingRevision_Insert
Description: Inserts a new drawing revision into Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingRevision_Insert>
<DrawingRevision>
<DrawingID>123</DrawingID>
<DrawingRevisionName>Drawing Revision 1</DrawingRevisionName>
</DrawingRevision>
</DrawingRevision_Insert>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingRevision_Insert>
<Successful>true</Successful>
<DrawingRevision>
<DrawingRevisionID>123</DrawingRevisionID>
<DrawingRevisionName>Drawing Revision 1</DrawingRevisionName>
</DrawingRevision>
</DrawingRevision_Insert>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingIDandDrawingRevisionNameelements are required.
DrawingRevision_Update
Description: Updates an existing drawing revision in Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingRevision_Update>
<DrawingRevision>
<DrawingRevisionID>123</DrawingRevisionID>
<DrawingID>123</DrawingID>
<DrawingRevisionName>Drawing Revision 1</DrawingRevisionName>
</DrawingRevision>
</DrawingRevision_Update>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingRevision_Update>
<Successful>true</Successful>
<DrawingRevision>
<DrawingRevisionID>123</DrawingRevisionID>
<DrawingRevisionName>Drawing Revision 1</DrawingRevisionName>
</DrawingRevision>
</DrawingRevision_Update>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- The
DrawingRevisionID,DrawingID, andDrawingRevisionNameelements are required.
DrawingRevision_Delete
Description: Deletes one or more drawing revisions from Tekla PowerFab.
Request:
<FabSuiteXMLRequest>
<ConnectionGUID>your_connection_guid</ConnectionGUID>
<DrawingRevision_Delete>
<DrawingRevisionID>123</DrawingRevisionID>
<DrawingRevisionID>456</DrawingRevisionID>
</DrawingRevision_Delete>
</FabSuiteXMLRequest>
Response:
<FabSuiteXMLResponse>
<DrawingRevision_Delete>
<Successful>true</Successful>
</DrawingRevision_Delete>
</FabSuiteXMLResponse>
Code Example:
// Not available in the provided code examples.
Notes:
- At least one
DrawingRevisionIDelement is required.
End of Section: Drawings