Exemple #1
0
        public virtual FieldConfig AddSheetField(string caption, string fieldname,
                                                 int width = 10,
                                                 IFieldHelper fieldhelper = null)
        {
            var ret = new FieldConfig(caption, fieldname);

            ret.Index        = FieldsConfig.Count;
            ret.WidthInChars = width;
            ret.FieldHelper  = fieldhelper;
            FieldsConfig.Add(ret);
            return(ret);
        }
Exemple #2
0
 public string GetBlancCellValue(FieldConfig fc, ref object value)
 {
     if (!fc.AllowNull)
     {
         return("Nav norādīta vērtība.");
     }
     if (fc.FieldType == EFieldType.String)
     {
         value = null;
     }
     else
     {
         value = DBNull.Value;
     }
     return("OK");
 }
Exemple #3
0
        public void SetCellValue(ICell cell, FieldConfig fc, object value)
        {
            if (value == DBNull.Value)
            {
                cell.SetCellType(CellType.Blank);
            }
            else
            {
                switch (fc.FieldType)
                {
                case EFieldType.Int:
                    cell.SetCellValue((double)(int)value);
                    break;

                case EFieldType.Int16:
                    cell.SetCellValue((double)(Int16)value);
                    break;

                case EFieldType.Single:
                    cell.SetCellValue((double)(Single)value);
                    break;

                case EFieldType.Double:
                    cell.SetCellValue((double)value);
                    break;

                case EFieldType.Decimal:
                    cell.SetCellValue((double)(decimal)value);
                    break;

                case EFieldType.String:
                    string s = (value == DBNull.Value) ? null : (string)value;
                    cell.SetCellValue(s);
                    break;

                case EFieldType.DateTime:
                case EFieldType.Date:
                    cell.SetCellValue((DateTime)value);
                    break;

                case EFieldType.Bool:
                    cell.SetCellValue((bool)value);
                    break;
                }
            }
        }
Exemple #4
0
        public string GetCellValue(ICell cell, FieldConfig fc, out object value)
        {
            value = null;
            if (cell.CellType == CellType.Error || cell.CellType == CellType.Unknown)
            {
                return("Kļūdaina vērtība.");
            }

            if (cell.CellType == CellType.Blank)
            {
                if (!fc.AllowNull)
                {
                    return("Nav norādīta vērtība.");
                }
                if (fc.FieldType == EFieldType.String)
                {
                    value = null;
                }
                else
                {
                    value = DBNull.Value;
                }
                return("OK");
            }

            switch (fc.FieldType)
            {
            case EFieldType.Int:
            case EFieldType.Int16:
            case EFieldType.Single:
            case EFieldType.Double:
            case EFieldType.Decimal:
                if (cell.CellType != CellType.Numeric)
                {
                    return("Kļudains vērtības tips.");
                }
                break;

            case EFieldType.String:
                if (cell.CellType != CellType.String)
                {
                    return("Kļudains vērtības tips.");
                }
                break;

            case EFieldType.DateTime:
            case EFieldType.Date:
                if (cell.CellType != CellType.Numeric)
                {
                    return("Kļudains vērtības tips.");
                }
                break;

            case EFieldType.Bool:
                if (cell.CellType != CellType.Boolean)
                {
                    return("Kļudains vērtības tips.");
                }
                break;
            }
            try
            {
                switch (fc.FieldType)
                {
                case EFieldType.Int:
                    value = (int)cell.NumericCellValue;
                    break;

                case EFieldType.Int16:
                    value = (Int16)cell.NumericCellValue;
                    break;

                case EFieldType.Single:
                    value = (Single)cell.NumericCellValue;
                    break;

                case EFieldType.Double:
                    value = (double)cell.NumericCellValue;
                    break;

                case EFieldType.Decimal:
                    value = (decimal)cell.NumericCellValue;
                    break;

                case EFieldType.String:
                    string s = cell.StringCellValue.Zn();
                    value = s;
                    if (s != null && fc.MaxLength > 0 && s.Length > fc.MaxLength)
                    {
                        return("Teksta garums pārsniedz atļauto.");
                    }
                    break;

                case EFieldType.DateTime:
                case EFieldType.Date:
                    value = cell.DateCellValue;
                    break;

                case EFieldType.Bool:
                    value = cell.BooleanCellValue;
                    break;
                }
            }
            catch (Exception)
            {
                return("Kļūdaina vērtība.");
            }
            return("OK");
        }