Example #1
0
 private void __QuickSetupAttValue(int objectID, IDataRecord rec, GrWAtt_Value nvs)
 {
     nvs.ObjectID = objectID;
     nvs.SubID    = __optionalSubAttFieldIndex >= 0
         ? (short)rec.GetIntNumber(__optionalSubAttFieldIndex)
         : Blasewitz.NO_SUBID;
     nvs.AttributeID = ID7110_AttributeID;
     nvs.EntityID    = EntityID;
 }
Example #2
0
        public GrWAtt_Value GetValue(int objectID, IDataRecord rec)
        {
            if (__valueFieldIndex < 0)
            {
                var t = DBConnectionPool.FieldIndices(Fields(), rec).ToArray();
                __valueFieldIndex = t[0];
                if (t.Length > 1)
                {
                    __optionalSubAttFieldIndex = t[1];
                }
            }

            //if (__valueFieldType == typeof(DBNull))
            //{
            //    __valueFieldType = rec.GetFieldType(__valueFieldIndex);
            //}
            if (rec.IsDBNull(__valueFieldIndex))
            {
                return(null);
            }
            GrWAtt_Value pva = null;

            switch (DataType)
            {
            case BlaVisumDataType.Integer:
            case BlaVisumDataType.Area:
            case BlaVisumDataType.Decimal:
            case BlaVisumDataType.Double:
            case BlaVisumDataType.Length:
            case BlaVisumDataType.Precise_time:
            case BlaVisumDataType.Time_period:
            case BlaVisumDataType.Velocity:
                var ivs = new PhaNumericAttribValue();
                __QuickSetupAttValue(objectID, rec, ivs);
                var va = rec.GetValue(__valueFieldIndex);

                var c = va.GetType();
                ivs.Value = Convert.ToDecimal(va);
                pva       = ivs;
                break;

            case BlaVisumDataType.String:
                var nvs = new PhaStringAttribValue();
                __QuickSetupAttValue(objectID, rec, nvs);
                nvs.Value = rec.GetString(__valueFieldIndex);
                pva       = nvs;
                break;

            default:
                throw new InvalidExpressionException();
            }

            return(pva);
        }
Example #3
0
        /// <summary>
        ///     Formatuje w zadany sposób wejściową wartość
        /// </summary>
        /// <param name="pav"></param>
        /// <returns></returns>
        public string Format(GrWAtt_Value pav)
        {
            if (pav == null)
            {
                return(__DefStringValue);
            }
            var pnv = pav as PhaNumericAttribValue;

            switch (DataType)
            {
            case BlaVisumDataType.Area:
                return(pnv.Value.ToString(__Format, CultureInfo.InvariantCulture) + "km2");

            case BlaVisumDataType.Length:
                return(pnv.Value.ToString(__Format, CultureInfo.InvariantCulture) + "km");

            case BlaVisumDataType.Precise_time:
                return(pnv.Value.ToString(__Format, CultureInfo.InvariantCulture) + "s");

            case BlaVisumDataType.String:
                var sav = pav as PhaStringAttribValue;
                return(sav != null ? sav.Value : "");

            case BlaVisumDataType.Time_period:
                return(pnv.Value.ToString("F0", CultureInfo.InvariantCulture) + "s");

            case BlaVisumDataType.Velocity:
                return(pnv.Value.ToString(__Format, CultureInfo.InvariantCulture) + "km/h");

            default:
                //int, dec, double...
                return(pnv.Value.ToString(__Format, CultureInfo.InvariantCulture));
            }

            throw new IndexOutOfRangeException();
        }