/// <summary> /// Parse Variable /// </summary> /// <param name="variable">variable</param> /// <param name="po">po object</param> /// <returns>translated variable or if not found the original tag</returns> private String ParseVariable(String variable, PO po) { int index = po.Get_ColumnIndex(variable); if (index == -1) { return("@" + variable + "@"); // keep for next } // Object value = po.Get_Value(index); //Get lookup display column name for ID if (_poInfo != null && _poInfo.getAD_Table_ID() == po.Get_Table_ID() && _poInfo.IsColumnLookup(index) && value != null) { VLookUpInfo lookup = _poInfo.GetColumnLookupInfo(index); //create lookup info for column DataSet ds = DB.ExecuteDataset(lookup.queryDirect.Replace("@key", DB.TO_STRING(value.ToString())), null); //Get Name from data if (ds != null && ds.Tables[0].Rows.Count > 0) { value = ds.Tables[0].Rows[0][2]; //Name Value } } if (value == null) { return(""); } return(value.ToString()); }
/// <summary> /// Parse Variable /// </summary> /// <param name="variable">variable</param> /// <param name="po">po object</param> /// <returns>translated variable or if not found the original tag</returns> private String ParseVariable(String variable, PO po) { int index = po.Get_ColumnIndex(variable); if (index == -1) { return("@" + variable + "@"); // keep for next } // Object value = po.Get_Value(index); if (value == null) { return(""); } MColumn column = (new MTable(GetCtx(), po.Get_Table_ID(), Get_Trx())).GetColumn(variable); if (column.GetAD_Reference_ID() == DisplayType.Location) { StringBuilder sb = new StringBuilder(); DataSet ds = DB.ExecuteDataset(@"SELECT l.address1, l.address2, l.address3, l.address4, l.city, CASE WHEN l.C_City_ID IS NOT NULL THEN ( SELECT NAME FROM C_City ct WHERE ct.C_City_ID=l.C_City_ID ) ELSE NULL END CityName, (SELECT NAME FROM C_Country c WHERE c.C_Country_ID=l.C_Country_ID ) AS CountryName FROM C_Location l WHERE l.C_Location_ID=" + value); if (ds != null && ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["address1"] != null && ds.Tables[0].Rows[0]["address1"] != DBNull.Value) { sb.Append(ds.Tables[0].Rows[0]["address1"]).Append(","); } if (ds.Tables[0].Rows[0]["address2"] != null && ds.Tables[0].Rows[0]["address2"] != DBNull.Value) { sb.Append(ds.Tables[0].Rows[0]["address2"]).Append(","); } if (ds.Tables[0].Rows[0]["address3"] != null && ds.Tables[0].Rows[0]["address3"] != DBNull.Value) { sb.Append(ds.Tables[0].Rows[0]["address3"]).Append(","); } if (ds.Tables[0].Rows[0]["address4"] != null && ds.Tables[0].Rows[0]["address4"] != DBNull.Value) { sb.Append(ds.Tables[0].Rows[0]["address4"]).Append(","); } if (ds.Tables[0].Rows[0]["city"] != null && ds.Tables[0].Rows[0]["city"] != DBNull.Value) { sb.Append(ds.Tables[0].Rows[0]["city"]).Append(","); } if (ds.Tables[0].Rows[0]["CityName"] != null && ds.Tables[0].Rows[0]["CityName"] != DBNull.Value) { sb.Append(ds.Tables[0].Rows[0]["CityName"]).Append(","); } if (ds.Tables[0].Rows[0]["CountryName"] != null && ds.Tables[0].Rows[0]["CountryName"] != DBNull.Value) { sb.Append(ds.Tables[0].Rows[0]["CountryName"]).Append(","); } return(sb.ToString().TrimEnd(',')); } else { return(""); } } //Get lookup display column name for ID if (_poInfo != null && _poInfo.getAD_Table_ID() == po.Get_Table_ID() && _poInfo.IsColumnLookup(index) && value != null) { VLookUpInfo lookup = _poInfo.GetColumnLookupInfo(index); //create lookup info for column DataSet ds = DB.ExecuteDataset(lookup.queryDirect.Replace("@key", DB.TO_STRING(value.ToString())), null); //Get Name from data if (ds != null && ds.Tables[0].Rows.Count > 0) { value = ds.Tables[0].Rows[0][2]; //Name Value } } if (column.GetAD_Reference_ID() == DisplayType.Date) { return(Util.GetValueOfDateTime(value).Value.Date.ToShortDateString()); } return(value.ToString()); }