AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX Blogs
DAX
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.08.2018, 20:16   #1  
Blog bot is offline
Blog bot
Участник
 
25,459 / 846 (79) +++++++
Регистрация: 28.10.2006
d365technext: Generate class from SQL database table
Источник: http://d365technext.blogspot.com/201...ase-table.html
==============


Generate class from SQL database table




declare @TableName sysname = 'BANKACCOUNT'
declare @Result varchar(max) = 'public class ' + UPPER(LEFT(@TableName,1))+LOWER(SUBSTRING(@TableName,2,LEN(@TableName))) + 'Entity

{'



select @Result =@Result + '
public ' + ColumnType + NullableSign + ' ' + ColumnName + ' { get; set; }
'
from
(
select
replace(col.name, ' ', '_') ColumnName,
column_id ColumnId,
casetyp.name
when'bigint' then 'long'
when'binary' then 'byte[]'
when'bit' then 'bool'
when'char' then 'string'
when'date' then 'DateTime'
when'datetime' then 'DateTime'
when'datetime2' then'DateTime'
when'datetimeoffset' then'DateTimeOffset'
when'decimal' then 'decimal'
when'float' then 'float'
when'image' then 'byte[]'
when'int' then 'int'
when'money' then 'decimal'
when'nchar' then 'char'
when'ntext' then 'string'
when'numeric' then 'decimal'
when'nvarchar' then 'string'
when'real' then 'double'
when'smalldatetime' then'DateTime'
when'smallint' then 'short'
when'smallmoney' then'decimal'
when'text' then 'string'
when'time' then 'TimeSpan'
when'timestamp' then'DateTime'
when'tinyint' then 'byte'
when'uniqueidentifier' then'Guid'
when'varbinary' then'byte[]'
when'varchar' then 'string'
else'UNKNOWN_' + typ.name
endColumnType,
case
whencol.is_nullable =1 and typ.name in('bigint', 'bit', 'date', 'datetime', 'datetime2', 'datetimeoffset', 'decimal', 'float', 'int', 'money', 'numeric', 'real', 'smalldatetime', 'smallint', 'smallmoney', 'time', 'tinyint', 'uniqueidentifier')
then'?'
else''
endNullableSign
from sys.columns col
join sys.types typ on
col.system_type_id = typ.system_type_id AND col.user_type_id = typ.user_type_id
where object_id= object_id(@TableName)
) t
order byColumnId


set @Result =@Result +'
}'


print @Result












public class BankaccountEntity

{
public int ID { get; set; }


public string BANK { get; set; }


public string ROUNTINGNUM { get; set; }


public string CURRENCY { get; set; }


public string ACCOUNTNUM { get; set; }


public int? MAINACCOUNTID { get; set; }


public string IBAN { get; set; }


public string SWIFT { get; set; }


public string BRANCH { get; set; }


public string CONTACTPERSON { get; set; }


public string CONTACTPHONE { get; set; }


public string CONTACTEMAIL { get; set; }


public bool? STATUS { get; set; }



}





Источник: http://d365technext.blogspot.com/201...ase-table.html
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Kine’s info: Copy Microsoft Dynamics NAV company by SQL script into another database v2 Blog bot NAV: Blogs 0 15.05.2016 17:11
CRM DE LA CREME! CRM 4.0 Disaster Recovery Blog bot Dynamics CRM: Blogs 2 26.02.2016 08:23
dax-lessons: SysFieldGroupLookup class in AX 2012–lookup from Table FieldGroups[X++] Blog bot DAX Blogs 0 05.04.2012 00:14
NAV Team: Multiple Record Corruption on a Native Database: The “Table Isolation” Trick Blog bot Dynamics CRM: Blogs 0 05.08.2010 22:06
wiki.dynamicsbook: Changes Made in Navision Financials 2.00 Blog bot Dynamics CRM: Blogs 0 02.09.2008 14:47
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:34.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.