FlowNetworkSummary Business Logic Tier (BLT)
- Last UpdatedApr 24, 2025
- 2 minute read
You can use the FlowNetworkSummary BLT to provide a list of hydraulically connected devices on a Flow Network. The BLT can be used on multiple datasets of hydraulically connected areas for the specified flow network.
Executing this BLT will return a result set that contains a data table for each hydraulically connected area. Each data table will include a row for each pump in the area. Each row will have information about the pump name, the station the pump belongs to, the station order, and whether the pump is considered blocked.
Note: A hydraulically connected area is defined as every pump within a station that has a path towards another pump or outlet of the station.
Parameters
The following table details the parameters for the FlowNetworkSummary BLT:
|
Name |
Type |
Optional |
Output |
Description |
|---|---|---|---|---|
|
FlowNetworkName |
String |
False |
False |
This input parameter specifies the name of the flow network for the pumps you are looking for. |
|
Result |
Int |
False |
True |
This output parameter indicates the execution result. It will return a zero (0) for success, and a non-zero value if an error occurs. |
|
Message |
String |
False |
True |
This output parameter will provide a result message after execution. |
Results
The BLT will return multiple DataTable objects, which will contain rows with the following information:
|
Name |
Type |
Description |
|---|---|---|
|
Pump |
String |
The name of the pump. |
|
Station |
String |
The name of the station the pump belongs to. |
|
StationOrder |
Int |
The station order of the station. |
|
Blocked |
Boolean |
Whether this pump is blocked based on the line blockage rules for pumps. |
FlowNetworkSummary BLT Programming Example
The following is an example of how you can program using the FlowNetworkSummary BLT:
String flowNetworkName = "SummaryPipeline";
BLTParameterValueAccessor result;
BLTParameterValueAccessor message;
var bltClientFactory = new BLTClientFactory();
using (var client = bltClientFactory.Create("FlowNetworkSummary"))
{
client.AddParameter(flowNetworkName);
client.AddParameter(out result); //Result is an out param
client.AddParameter(out message); //Message is an out param
client.Execute();
if (Int32.TryParse(result.Value.ToString(), out int r) && r != 0)
{
Console.WriteLine("FlowNetworkSummary failed, error:" +
message.Value.ToString());
}
else
{
var output = client.GetResults();
if (output.Count > 0)
{
foreach (var row in output)
{
//Do something with the list of Tables
}
}
}