kw GCONPROD: GUIDE_RATE_DEF INJ, POTN, FORM handled as warning.

added enum guide_ref_enum.

...

field.

.tt
This commit is contained in:
Steinar Foss
2019-08-19 18:05:43 +02:00
parent 6e93c5ee1f
commit 9a6065509b
7 changed files with 69 additions and 10 deletions

View File

@@ -1486,12 +1486,23 @@ namespace {
auto gas_target = record.getItem("GAS_TARGET").get<UDAValue>(0);
auto water_target = record.getItem("WATER_TARGET").get<UDAValue>(0);
auto liquid_target = record.getItem("LIQUID_TARGET").get<UDAValue>(0);
double guide_rate = -1;
std::string guide_rate_def;
if (record.getItem("GUIDE_RATE_DEF").hasValue(0)) {
guide_rate_def = record.getItem("GUIDE_RATE_DEF").get<std::string>(0);
if (! (guide_rate_def == "INJ" || guide_rate_def == "POTN" || guide_rate_def == "FORM"))
guide_rate = record.getItem("GUIDE_RATE").get<double>(0);
double guide_rate = 0;
GroupProduction::GuideRateDef guide_rate_def = GroupProduction::NO_GUIDE_RATE;
if (group_name != "FIELD") {
if (record.getItem("GUIDE_RATE_DEF").hasValue(0)) {
std::string guide_rate_str = record.getItem("GUIDE_RATE_DEF").getTrimmedString(0);
guide_rate_def = GroupProduction::GetGuideRateFromString( guide_rate_str );
if ((guide_rate_str == "INJ" || guide_rate_str == "POTN" || guide_rate_str == "FORM")) {
std::string msg = "The supplied guide_rate value will be ignored";
parseContext.handleError(ParseContext::SCHEDULE_IGNORED_GUIDE_RATE, msg, errors);
}
else {
guide_rate = record.getItem("GUIDE_RATE").get<double>(0);
if (guide_rate == 0)
guide_rate_def = GroupProduction::POTN;
}
}
}
auto resv_target = record.getItem("RESERVOIR_FLUID_TARGET").getSIDouble(0);
{