}        // key1: blockId, key2:referecne, value

        private static DataTable CreateDataTableStrcutureFromBlockSubitem(List <PdmBlockSubItemClrDto> listSubitems)
        {
            DataTable table = new DataTable("SubitemTable");

            DataColumn aRefDataColumn = new DataColumn(GridColumnConstantName.ProductReferenceID, typeof(int));

            table.Columns.Add(aRefDataColumn);


            foreach (PdmBlockSubItemClrDto aSubitem in listSubitems)
            {
                DataColumn aDataColumn;

                string aSubItemId = aSubitem.SubItemId.ToString();
                if (aSubitem.ControlType == (int)EmControlType.DDL)
                {
                    aDataColumn = new DataColumn(aSubItemId, typeof(string));
                }
                else
                {
                    aDataColumn = new DataColumn(aSubItemId, ControlTypeValueConverter.GetDataTypeByControlType(aSubitem.ControlType));
                }

                table.Columns.Add(aDataColumn);
            }

            return(table);
        }
        internal static DataTable CreateDataTableStrcutureFromGridColumn(List <PdmGridMetaColumnClrDto> listSubitems)
        {
            DataTable table = new DataTable("GridTable");

            DataColumn aRefDataColumn = new DataColumn(GridColumnConstantName.ProductReferenceID, typeof(int));

            table.Columns.Add(aRefDataColumn);

            //aRefDataColumn = new DataColumn(GridColumnConstantName.RowID, typeof(int));
            //table.Columns.Add(aRefDataColumn);


            aRefDataColumn = new DataColumn(GridColumnConstantName.RowValueGUID, typeof(Guid));
            table.Columns.Add(aRefDataColumn);

            aRefDataColumn = new DataColumn(GridColumnConstantName.Sort, typeof(int));
            table.Columns.Add(aRefDataColumn);

            foreach (PdmGridMetaColumnClrDto aSubitem in listSubitems)
            {
                DataColumn aDataColumn;

                string aSubItemId = aSubitem.GridColumnId.ToString();
                if (aSubitem.ColumnTypeId == (int)EmControlType.DDL)
                {
                    aDataColumn = new DataColumn(aSubItemId, typeof(string));
                }
                else
                {
                    aDataColumn = new DataColumn(aSubItemId, ControlTypeValueConverter.GetDataTypeByControlType(aSubitem.ColumnTypeId));
                }

                table.Columns.Add(aDataColumn);
            }

            return(table);
        }