Skip to content

Releases: Daoting/dt

4.3.2

Choose a tag to compare

@Daoting Daoting released this 15 Dec 03:42

项目

VS扩展工具-4.3.2
客户端源码-4.3.2
样例源码-4.3.2

功能

  • CList CTree增加ValID属性,设置当前格对应的数据源列名,默认name
  • FvCell.Changed加参数

Bug修改

  • 升net8.0后启动bug
  • Release版生成时程序集裁剪bug

4.3.1

Choose a tag to compare

@Daoting Daoting released this 12 Dec 03:48

项目

VS扩展工具-4.3.1
客户端源码-4.3.1
服务端源码-4.3.0
基础控件源码-3.1.0

变更

  • 因Alt + 快捷键需要点击窗口获取焦点,调整为Ctrl + 快捷键 方式
  • 将一个别名对应一个类型和对应类型列表分开
  • 始终禁止xbf嵌入到pri文件,默认debug时不嵌入,release时嵌入,嵌入时包升级会造成引用项目都必须重新编译
  • snow算法起始时间20231001
  • CText默认实时更新,否则保存按钮不能实时更新状态
  • 模型库不再包含视图
  • 按照pg规范表、字段都小写
  • cm_user 增改acc name,cm_wfi_item增加sender_id
  • 区分账号、姓名,业务系统在绑定账号时可设置姓名
  • sln后缀统一小写
  • 简化事件参数类型

功能

  • Lv表格调整列宽时按住ctrl显示宽度消息
  • Fv增删FvCell hot有效
  • Lv表格的Col列支持动态调整属性,支持动态增删
  • Lv列表Dot支持动态调整属性、热重载,数据模板通过切换注释支持热重载
  • BuildTools中生成字典内容时将一个别名对应一个类型和对应类型列表分开
  • 增加共享类型的别名标签,用在两个无引用关系的dll之间的互相访问
  • Mi增加Call事件,无事件参数,方便复用处理方法
  • oracle number映射添加注释
  • Fv切换数据源自动跳入第一个单元格
  • 账号和手机号都支持登录
  • 初始化库增加导入初始结构功能
  • CLink的Click和Call事件
  • Dlg加载Tab时设置缺省标题
  • 设置FuzzySearch在Dlg的大小
  • 权限增加模块、功能两级目录,适用权限过多的情况
  • Win嵌入Dlg
  • 判断权限的简洁写法
  • Win的PhoneUI模式不占用标题栏
  • 生成判断权限的类
  • 权限增加两级目录的sql脚本
  • Fv增加两快捷键:ctrl+s保存、ctrl+n新建
  • 调整PhoneUI下Lv上下文菜单按钮样式
  • 主页菜单增加收藏功能
  • 任务栏主页按钮显示开始菜单对话框
  • 工作台菜单项增加注释
  • 收藏菜单排序
  • CList在选项超过4个时默认显示过滤框
  • Entity增加对视图的简单查询
  • Fv增加AutoFocus控制切换数据源后是否自动获得焦点,默认false,但对IsAdded的row自动设置焦点
  • 优化查询sql
  • 增加Lv列表模式的列头
  • Lv列表模式的自定义列头
  • 统一4库对bool类型select时使用 fieldx='1' 的形式
  • 默认主页增加待办任务
  • 简化流程设计二级窗口
  • 流程日志适配pg
  • 流程工作项cm_wfi_item中添加sender_id
  • 待办任务显示留言
  • Win.LoadMain 支持加载 Tab
  • 移除WfFormUsage,动态判断表单编辑状态
  • Lv的ViewMode增加Auto,部分场景可根据View类型自行决定
  • Lv的ListForm样式
  • Col.Width支持 * 和 Auto
  • IEntityWriter增加NeedCommit,判断是否有数据需要提交
  • IEntityWriter.Commit增加参数,控制没有需要保存的数据时是否提示
  • 服务端配置客户端实体存储使用的默认服务名
  • IEntityWriter增加Delete(Table)
  • 发送回退增加填写留言功能
  • 升级net8.0
  • 无桌面时用对话框显示窗口
  • 增加CPick实现选择器的简单功能

Bug修改

  • 命名空间与类名相同并放在根目录查找xaml
  • FvCell编辑时Tab快捷键乱跳
  • 上下文菜单弹出位置错误
  • sqlite.GetScalar为dbnull的情况
  • Cell为string类型时保留原始null值
  • 调整初始化库时可为null的字段
  • 在Dlg内部点击并且有遮罩时,传递到紧挨的下层对话框,比如:对话框有遮罩,点击内容弹出菜单,再点击对话框区域(非菜单内),确保菜单能关闭
  • 可null枚举类型的显示
  • CList选择后跳两格
  • sqlite的sql语句中参数值null时必须转为 DBNull.Value
  • CDate中DateTime?类型时default(DateTime) 转null
  • MenuHome中在android上,Tab内的所有事件不触发,像被回收了
  • Lv键盘上下移动选择行时滚动位置错误

4.2.2

Choose a tag to compare

@Daoting Daoting released this 27 Sep 01:31

Release 4.2.2

变更

  • 导出模型库,将ExportToModel放入model.json
  • 服务地址拆分成独立配置文件url.json
  • oracle导出sqlite模型库时非常慢,将模型库和其它sqlite缓存数据分文件存储
  • sqlite的model与其它sqlite文件分开存储,调整客户端
  • 将开发调试、系统管理员的常用功能集成到“系统”,右键开始或快捷键:Alt + ↓
  • DataTable中Copy是复制数据和结构,Clone是只结构,Table中调整成相同习惯
  • 只要详细级别才输出sqlite的sql
  • CopyToClipboard放入Kit
  • 日志输出级别各对象分开,日志文件默认Info,trace默认debug

功能

  • .admin页面增加版本号
  • 增加客户端版本号
  • win版app增加自动更新功能
  • 增加TreeDiagram控件
  • 优化oracle导出sqlite模型库的性能,增加导出过程日志
  • 根据配置导出普通sqlite文件
  • 客户端刷新sqlite缓存文件
  • 主页右键增加本地库、本地文件,更方便,系统日志中的仍保留,确保未进入桌面时也可使用
  • 增加打开服务日志
  • 本地库增加刷新sqlite缓存文件
  • 初始化库支持连接时自定义用户,可指定新用户密码
  • Cell增加触发提示消息事件,FvCell自动显示警告信息
  • 生成实体类增加c开头的Cell类型属性,方便使用
  • oracle查询结果的enum bool 的特殊处理
  • oracle的bool字段char(1),注释以 #bool# 开头,和枚举类似
  • oracle导出模型库时bool类型的字段正确
  • 客户端日志输出到sqlite文件
  • 快捷键:
    Alt + ↓ 系统
    Alt + ← 动态日志
    Alt + → 打开LocalState路径
    Alt + ↑ 切换服务
    Alt + 回车 复制窗口类型
  • 客户端日志浏览
  • 切换服务器地址
  • QueryFv将查询、重置按钮放在内部,省去重复
  • 客户端日志中提取sql的功能:sql中含变量时支持与参数值拼成完整sql
  • Lv的Table模式标题行支持多行,自动调整行高
  • 服务端html格式日志增加显示:客户端ip 调用位置 UserID
  • "系统"原左侧列表方式调整为面板方式
  • 搬运工样例 转 助手,增加查询其它App日志功能,需“以管理员运行"
  • Entity的OnChanging钩子参数更易用
  • Row Table增加的CellHook钩子
  • Win增加 LeftPanes LeftPane 等属性
  • Menu增加手动创建Mi的简化写法
  • 实现fifo中在标题栏左上角显示Tab列表
  • Lv列头多行时同步数据行高度
  • Col多行支持@分割
  • FvCell增加KeyUp事件
  • Dt.Cells中的图标在pri中放入Dt.Cells.Icons,避免外部覆盖
  • 打包时删除本地nuget的旧版本包
  • 解决服务中Cell的错误
  • 恢复Cell.GetValInternal异常时给出ID提示
  • 桌面任务栏作为app窗口标题栏
  • 任务栏支持外部自定义开始和托盘内容
  • Dlg增加从8个边缘角滑入的选项
  • Nav构造方法去除fifo中dll写法,用View代替
  • 窗口、对话框也可复制类名和xaml

Bug修改

  • 库初始化异常时恢复按钮状态
  • 优化数据库初始化向导,简单易懂
  • boot服务启动bug,启动过程拆分成独立
  • 确认对话框、错误对话框不支持非UI线程显示
  • Phone模式页面内容有水平滚动栏时不支持左右滑动
  • 设置Lv.SelectedItem和SelectedIndex时触发的SelectionChanged事件参数值类型不同
  • Fv的CTip不接收Tab停靠

4.2.0

Choose a tag to compare

@Daoting Daoting released this 31 Jul 08:21

变更

  • 权衡利弊,以key获取sql语句的方式调整为调用存储过程,key=存储过程名,调用IDataAccess的程序无需调整,需要将cm_sql表的sql语句移植到存储过程
  • 升级服务端引用包
  • 升级客户端sqlite相关包
  • 因支持4种数据库,命名特点各不相同,为实现自动生成实体的属性符合命名规范,基础的表名、字段名都采用小写,单词间以下划线分隔,生成的属性名符合Pascal规则,无下划线,建议业务表和字段都采用中文
  • IDataAccess增加创建IEntityWriter,调整DomainSvc中的写法
  • 服务启动时不再缓存所有库表结构
  • 生成Entity代码3个文件,tbl.cs sql.cs .cs
  • 生成DomainSvc类2个文件,sql.cs .cs
  • service.json将单体模式和初始化库合并,cm配置增加导出模型库设置
  • 序列名称:表名_字段名,4库不同的取序列值方法,时间类型统一精确到秒

功能

  • 增加EntityX.GetCount方法
  • .admin页增加初始化数据库功能
  • 增加PostgreSql支持
  • postgresql必须设置CommandBehavior.KeyInfo才能查询到列结构信息,含列结构信息时pg最慢!
  • 增加获取当前服务默认数据库的类型、键名
  • 初始化库增加demo库
  • TableCol记录所属TableSchema
  • VS扩展实体类选择表时增加“表名不包括前缀”选项
  • oracle插入更新时bool类型自动转换
  • postgresql分页查询功能,根据id查询数据不能为string
  • Win中停靠的弹出面板可拖拽调整尺寸
  • 等待对话框
  • Entity 反序列化时对于byte short类型的列根据属性类型自动转 enum 类型
  • 增加调用存储过程返回Table的demo
  • 支持视图生成Enity
  • 增加视图实体的增删改demo,mysql sqlserver能保存的列最多,oracle只可保存主键列所属表的列,pg视图不能保存数据
  • 系统日志增加复制select语句的功能,方便调试查询语句
  • 增加Table 作为 ITreeData时父节点id的列名

Bug修改

  • Win中停靠在四周的Tab在固定、停靠切换时丢失弹出面板的尺寸
  • 解决Excel控件中公式不再重新计算bug

4.1.1

Choose a tag to compare

@Daoting Daoting released this 15 Jun 03:47

变更

  • Cols不再继承KeyedCollection,支持重复列id
  • IFvCell移除IsHorStretch、添加ColSpan,FormPanel重写布局算法
  • 将LobKit登录用户相关回调放在Kit中
  • 修改global.json中数据源配置,控制是否可导出到模型
  • 初始Sqlite库、Execute、BatchExec调为异步
  • 多数据库sql语句参数前缀不同
  • 不同数据库类型的分页语句
  • QueryFv FuzzySearch 只负责查询内容,查询sql的动态生成放在QueryClause,也可自定义生成sql
  • 同步调整VS扩展中的框架模板
  • where true 或 where false 除mysql外都不支持
  • 表名采用库里原始大小写,比较时大小写不敏感,oracle生成的sql在表名字段名加引号
  • cm服务中导出模型的配置放在model.json
  • 单体服务支持每个服务连接不同库
  • rpc调用添加服务名,涉及所有类型rpc
  • 服务端缓存sql、根据key查询sql支持三种库类型
  • VS扩展的服务项目支持连接不同库
  • 三种数据库的序列问题

功能

  • 增加更新模型菜单项
  • 增加全局Dt.Base.SelectionMode别名
  • Sqlite模型文件支持:多个数据库、多种数据库
  • 增加可配置的空服务
  • 升级uno4.9,Wasm支持UIElement.ProtectedCursor MediaPlayerElement
  • Lv增加Defer()
  • Lv增加Where
  • Fv增加Defer()

Bug修改

  • 文件管理中的FolderPage因获取权限异步,造成初次加载时空引用
  • Excel的表格的标题下拉箭头点击后报错,无法弹出过滤、排序对话框
  • Excel打印功能升级WinUI后报错
  • 涉及元素光标的ProtectedCursor通过InputSystemCursor.Create赋值时锁死,比如:ColHeaderCell,观察
  • wasm使用new Rect()布局时无法隐藏元素,统一用Rect(-1, -1, 0, 0)
  • 解决增加下载文件次数异常

4.0.1

Choose a tag to compare

@Daoting Daoting released this 17 Mar 07:57

变更

  • 流程定义中删除FormType ListType字段,使用类型别名
  • 优化Entity的Hook
  • Entity增加OnInit方法用来统一添加当前实体的所有回调方法,主要包括三类回调:保存前、删除前、Cell.Val值变化前
  • 服务端生成Entity方法
  • 修改客户端和服务端的DataProvider调用Entity的保存前、删除前回调方法
  • 修改服务端生成实体类及扩展部分的方法
  • VS扩展用到表名列表和表结构信息都采用实时获取方式,不使用服务端缓存
  • 增加demo服务,用于业务样例
  • 删除Row.AttachHook,重新生成Entity文件放在Domain下
  • Entity增加GetByID,调整服务端生成Entity的方法
  • 增加EntityEx类,添加静态查询方法,重新生成项目中的*.Designer.cs文件
  • 增加EntityEx类,添加静态保存方法
  • 增加EntityEx类,添加静态删除法,重新生成项目中的*.Designer.cs文件
  • 增加UnitOfWork类,添加保存删除方法
  • Entity增加静态方法DelByID,重新生成*.Designer.cs文件
  • 服务端删除EntityAccess和DataProvider,增加IDataProvider接口,为支持多种库类型准备
  • 修改总体架构图,增加客户端Domain部分
  • VS扩展工具类的命名空间默认到一级目录模块名
  • VS扩展工具单实体框架调整
  • VS扩展工具单实体框架生成自定义查询面板
  • 客户端增加本地事件的定义、发布、处理,和服务端用法相同
  • 替换DataProvider中Save Delete方法,移除DataProvider<>,调整到EntityWriter
  • 实体类后缀 Obj -> X
  • EntityEx.DelByID支持直接删除,不经过校验领域事件等
  • CellUI -> LvCall, MidVal -> FvCall, IMidVal -> IFvCall
  • 因Mv内菜单无法绑定,将Mv合并到Tab,对于自定义Mv需要修改两处:Mv -> Tab, Win中xaml删除自定义Mv的外套Tab
  • 登录过程移至客户端
  • 领域服务用静态方式替换单例模式,增加样例
  • DtControl的虚方法OnControlLoaded修改为OnFirstLoaded,方便理解
  • Entity增加OnSaved OnDeleted回调
  • Entity的GetByID GetByKey不再涉及缓存,GetFromCacheFirst专门用于优先从缓存读取
  • 原通过DeleteBySvc SaveBySvc处理UserObj的缓存和领域事件移植客户端
  • Rbac基于角色的访问控制
  • 客户端缓存数据:可访问的菜单,具有的权限,数据版本号用到时比较、更新
  • 文件 发布 报表管理 参数定义 用户设置 选项管理功能
  • 开始菜单项提示信息由各视图自行处理

功能

  • VS扩展增加批量生成实体类功能
  • 增加业务样例项目
  • Col无Title时显示ID
  • 增加查询面板QueryFv,FvCell支持比较符
  • Row增加To方法,和任意Entity类型转换,共用_cells
  • 生成的实体类增加和外部共用Cells的构造方法
  • 增加虚拟实体,并在EntityEx和UnitOfWork中处理
  • BuildToos增加Dt.Core.DtDictionaryResource().Merge()
  • 增加EntityX,将Designer的静态方法放入泛型中
  • 增加 IEntityAccess IEntityWriter 接口
  • UnitOfWork 改 EntityWriter私有类
  • 两端增加 DomainSvc 领域服务基类,BaseApi 改为 DomainSvc
  • EntityEx的普通实体方法:增删改及批量,及EntityX.DelByID
  • 实体领域事件样例
  • 虚拟实体的增删改查样例
  • 父子实体的增删改查样例
  • 实体缓存样例
  • 生成的实体类增加自定义服务名
  • sqlite的增删改查样例
  • 系统日志增加复制和除此清空功能
  • sqlite的增删改查记录系统日志
  • 系统日志增加输出附加属性
  • 测试sqlite本地库涉及的改动,修改bug
  • 服务端实体的增删改查样例
  • 增加支持窗口xaml的精简写法
  • 升级uno4.7.37,完善Tab相关的文档
  • VS扩展工具单机版项目模板bug
  • 添加单实体及虚拟实体框架模板、样例
  • 虚拟实体的内部实体Cell值变化时统一内部实体的OnChanging回调
  • 虚拟实体和内部实体IsChanged的状态同步
  • Tab区域内导航增加切换Tab和返回首页的功能
  • VS扩展工具一对多模板
  • 多对多模板及样例
  • EntityX的Query Page First支持完整sql查询
  • 完善文档
  • 多Tab在Dlg中显示

Bug修改

  • Fv格标题提示被截断的长文本
  • Mv中Menu的项无法绑定,如保存按钮的IsEnabled,以合并到Tab

3.3.0

Choose a tag to compare

@Daoting Daoting released this 08 Dec 02:54

变更

  • 解决代理服务DataProvider类型小写的警告,调整为大写内联类型
  • SqliteProvider库名类型调整为大写内联类型

功能

  • 升级.net7.0
  • 升级服务端、客户端引用包

Bug修改

  • android平台过时API警告
  • iOS平台过时API警告
  • 解决升级.net7.0后wasm生存错误
  • 后台任务启动构造Stub时App为null

3.2.4

Choose a tag to compare

@Daoting Daoting released this 02 Dec 02:48

Bug修改

  • Lv自定义单元格UI重复绘制
  • NavList递归触发嵌套子窗口Closing事件
  • Win的Main或Pane的子项类型错误时不抛异常,提示错误,winappsdk 1.2已处理异常但没升级
  • 继承Win的子类或任意Control子类若没有对应的xaml,放可视树不显示,会异常退出,和uwp早期版本一样
  • Excel切换显示网格_excel.ActiveSheet.ShowGridLine无效

功能

  • 优化NavList
  • 增加Lv行样式动态切换样例
  • 增加Lv单元格UI动态切换样例,完善Lv文档
  • 增加自定义格取值赋值过程
  • RptView工具栏菜单
  • 报表组的报表列表采用NavList
  • 从开始菜单打开报表窗口和报表组窗口
  • 报表查询基类及查询对话框
  • 报表增加工具栏菜单和上下文菜单的控制

3.1.0

Choose a tag to compare

@Daoting Daoting released this 11 Nov 08:43

变更

  • Lv自定义行列UI的调整:
    移除CellEx静态类自定义行列UI的方式
    增加 Lv.ItemStyle 回调方法自定义行样式
    移除 Col.UI Dot.UI 属性
    增加 Col.Call Dot.Call 属性,自定义单元格UI的方法名,多个方法名用逗号隔开,形如:Def.Icon,Def.小灰

功能

  • 增加Stub.Reboot方法支持切换Stub新实例重启
  • Dt.BuildTools 增加对wasm发布时清理无用文件,处理PWA缓存文件重复的问题
  • 类型别名字典中每个别名对应一个类型列表
  • 后台功能确认:文件 通讯录

3.0.1

Choose a tag to compare

@Daoting Daoting released this 03 Nov 06:13

变更

  • 将使用标准服务的管理功能全部拆分迁移到Dt.Mgr,Dt.Core Dt.Base与标准服务无任何耦合
  • 增加Dt.BuildTools,自动生成Stub的字典代码
  • sqlite数据查询转异步方法

功能

  • VS扩展工具新建项目时增加向导
  • Kit.ShowRoot 支持 View