从 TMS WEB Core 迁移到 sgcHTML — 面向 Delphi 的 Web UI 组件 | eSeGeCe

从 TMS WEB Core 迁移到 sgcHTML

TMS WEB Core 是 TMS Software 的商业框架,它将 Delphi 和现代 Object Pascal 编译为 JavaScript,因此应用作为单页应用在浏览器客户端运行,并通过 REST/JSON(通常是 TMS XData)与后端通信。使用它的团队在以下情况会关注 sgcHTML:希望 Pascal 代码保持原生并在服务器上编译;希望直接访问 TDataSet,而不必仅仅为了展示数据而构建单独的 API 层;以及希望获得经典 Delphi 服务器开发的调试体验,而不是在浏览器中调试。

架构上有哪些变化

两种各有道理的模型:编译为 JavaScript 在浏览器中运行的代码,或在服务器上渲染 HTML 的原生代码。

TMS WEB Core 模型中,Object Pascal 被编译为 JavaScript,生成的单页应用完全在浏览器中运行。数据访问通过一个 HTTP API 层进行,通常是 REST/JSON(例如 TMS XData),您需要在客户端之外构建、部署并保护它。调试有一部分发生在浏览器中。sgcHTML 反转了这个模型:您的代码在服务器上保持原生,浏览器接收标准的服务器端渲染 HTML。

服务器上的原生代码

您的 Object Pascal 或 C# 一如既往地编译并在服务器上运行。没有转译步骤,也没有 JavaScript 调试,您在自己的 IDE 中调试原生服务器代码。

直接的数据访问

89 个组件中有 27 个是数据感知的,可在同一进程中直接绑定到 TDataSet 或 DataSource。仅仅为了把数据放到页面上,不需要单独的 REST 层。

服务器端渲染的 Bootstrap 5

页面是带有干净 Bootstrap 5 标记的标准服务器端渲染 HTML:对 SEO 友好,在性能较弱的设备上也很快,并可用任何 Bootstrap 主题设计样式。交互来自 htmx(约 14 KB)。

内置实时功能

sgcHTMX 引擎通过 WebSockets 推送更新:服务器可以向已连接的浏览器广播 HTML 片段(hx-swap-oob),无需接入客户端框架。

TMS WEB Core 概念及其 sgcHTML 等效项

TMS WEB Core 应用的每个部分在 sgcHTML 模型中的落点。

TMS WEB Core 概念sgcHTML 等效项
编译为 JavaScript 的表单(pas2js)由原生组件构建、在服务器端渲染的 sgcHTML 页面
浏览器中的 SPA 路由由您的 Delphi 服务器提供的标准 URL
REST/XData 数据层服务器端直接绑定 TDataSet;以后需要时再添加 REST
异步浏览器回调返回组件 HTML 的 htmx 片段路由
在浏览器中调试用 Delphi/IDE 调试原生服务器代码
JavaScript 库集成开箱即用的 Bootstrap 5 组件
WebSocket 客户端接线组件集内置的 sgcHTMX 引擎广播
静态托管加 API 后端单个自包含的服务器二进制文件

您保留的内容

迁移到 sgcHTML 改变的是 UI 的产生位置,而不是您团队的工作方式。

您的代码库和 IDE

您继续在 RAD Studio 中使用现有的 Delphi 或 C++ Builder 项目工作。sgcHTML 组件是编译进您的服务器二进制文件的原生类,纯托管的 .NET 实现提供相同的 Tsgc* 类名。

您的数据模块

您的 TDataSet 逻辑、查询和数据模块原样继续工作。数据感知的 sgcHTML 组件在进程内直接绑定到它们。

您的部署习惯

部署为单个自包含的可执行文件或服务,无需外部运行时。它可运行在 sgcWebSockets 服务器中,也可运行在 WebBroker、DataSnap 和 RAD Server 宿主中。

您的语言技能

您编写 Object Pascal 或 C#,sgcHTML 负责生成 HTML、CSS 和 JavaScript。开发者无需编写任何 JavaScript。

务实的迁移路径

您不需要一次性推倒重写。四个步骤,逐屏迁移。

1

清点屏幕

列出您 TMS WEB Core 应用的表单和视图、每一个展示的数据,以及哪些需要实时更新。

2

将每个屏幕映射到组件

使用组件画廊,将每个屏幕与 sgcHTML 的网格、表单、图表和仪表板对应起来。27 个数据感知组件覆盖了绑定数据库的屏幕。

3

逐页重建

sgcHTML 提供标准 HTTP 服务,因此两个服务器可以在同一反向代理后并行运行,您可以每次只迁移一个页面。

4

接入交互和推送

添加 htmx 交互以实现局部更新,并在应用需要实时数据的地方通过 sgcHTMX 引擎加入 WebSocket 推送。

我们帮您迁移

您不必独自完成这件事。eSeGeCe 提供迁移服务:告诉我们您的 TMS WEB Core 应用,我们的团队将帮助您规划迁移、提出组件映射方案并评估工作量。如果您愿意,我们也可以通过 sgcCustomization HTML 为您重建应用,一次性套餐价格自 €149 起,基于您所授权的组件构建。

sgcHTML 本身按开发者授权(Single/Team/Site),价格自 €299 起,并需要 sgcWebSockets Professional 或 Enterprise。

实际运行效果

五个完整的应用,全部仅使用 sgcHTML + sgcWebSockets 构建,并在 eSeGeCe 演示服务器上实时运行。

ERP

客户、供应商、产品、发票和报表。

打开实时演示 →

管理 CRUD

一个紧凑的管理控制台,包含 CRUD 界面和实时搜索。

打开实时演示 →

实时监控

一个实时仪表板,其 KPI 通过 WebSockets 推送。

打开实时演示 →

客户门户

一个自助门户,包含订单、个人资料和支持。

打开实时演示 →

帮助台

一个支持工单帮助台,包含回复线程和管理仪表板。

打开实时演示 →

说句公道话:如果目标是一个可离线、无需持久服务器连接即可运行的客户端 SPA 或 PWA,那么像 TMS WEB Core 这样的客户端方案仍然是合理的选择。如果您还在权衡各个选项,我们中立的对比页面将 sgcHTML、uniGUI、TMS WEB Core、IntraWeb、Elevate Web Builder 和 D2Bridge 放在一个附来源引用的并排矩阵中。其他起点则在迁移中心中介绍。

超值之选:All-AccesseSeGeCe 全部产品,含高级支持,每年 €1,059 起。
查看 All-Access 价格

准备好试试服务器端渲染模型了吗?

下载包含全部 89 个组件的免费试用版,将您的第一个 TMS WEB Core 屏幕重建为服务器端渲染的 Bootstrap 5 页面。