<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>业务建模 on 文艺技术笔记</title>
        <link>https://wenyiblog.top/tags/%E4%B8%9A%E5%8A%A1%E5%BB%BA%E6%A8%A1/</link>
        <description>Recent content in 业务建模 on 文艺技术笔记</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh</language>
        <copyright>文艺技术笔记 | 软件工程师文艺</copyright>
        <lastBuildDate>Fri, 05 Jun 2026 10:00:00 +0800</lastBuildDate><atom:link href="https://wenyiblog.top/tags/%E4%B8%9A%E5%8A%A1%E5%BB%BA%E6%A8%A1/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>二次开发入门：BMIDE 业务建模完整教程</title>
        <link>https://wenyiblog.top/2026/06/tc-7-bmide-dev/</link>
        <pubDate>Fri, 05 Jun 2026 10:00:00 +0800</pubDate>
        
        <guid>https://wenyiblog.top/2026/06/tc-7-bmide-dev/</guid>
        <description>&lt;p&gt;BMIDE（Business Modeler IDE）是 Teamcenter 的业务建模工具，用于扩展数据模型而无需编写代码。它是所有二次开发的起点。&lt;/p&gt;
&lt;h2 id=&#34;bmide-开发完整流程&#34;&gt;&lt;a href=&#34;#bmide-%e5%bc%80%e5%8f%91%e5%ae%8c%e6%95%b4%e6%b5%81%e7%a8%8b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;BMIDE 开发完整流程
&lt;/h2&gt;&lt;h3 id=&#34;1-创建-commonitem继承自-item&#34;&gt;&lt;a href=&#34;#1-%e5%88%9b%e5%bb%ba-commonitem%e7%bb%a7%e6%89%bf%e8%87%aa-item&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;1. 创建 CommonItem（继承自 Item）
&lt;/h3&gt;&lt;p&gt;在 Business Object 上通过 Item 创建新的类型 CommonItem，添加自定义属性：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;Attribute Type&lt;/th&gt;
&lt;th&gt;String Length&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;A2_Customer&lt;/td&gt;
&lt;td&gt;String&lt;/td&gt;
&lt;td&gt;60&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;2-创建-sampleitem继承自-commonitem&#34;&gt;&lt;a href=&#34;#2-%e5%88%9b%e5%bb%ba-sampleitem%e7%bb%a7%e6%89%bf%e8%87%aa-commonitem&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;2. 创建 SampleItem（继承自 CommonItem）
&lt;/h3&gt;&lt;p&gt;添加 MakeBuy 属性：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;Attribute Type&lt;/th&gt;
&lt;th&gt;String Length&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;A2_MakeBuy&lt;/td&gt;
&lt;td&gt;String&lt;/td&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;同时为 Item Revision 添加属性：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;Attribute Type&lt;/th&gt;
&lt;th&gt;默认值&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;A2_Material&lt;/td&gt;
&lt;td&gt;String&lt;/td&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A2_Approved&lt;/td&gt;
&lt;td&gt;Logical&lt;/td&gt;
&lt;td&gt;false&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;3-设置属性可见性与常量&#34;&gt;&lt;a href=&#34;#3-%e8%ae%be%e7%bd%ae%e5%b1%9e%e6%80%a7%e5%8f%af%e8%a7%81%e6%80%a7%e4%b8%8e%e5%b8%b8%e9%87%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;3. 设置属性可见性与常量
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Required = true&lt;/strong&gt; → 属性变为必填&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Visible = false&lt;/strong&gt; → 属性在界面上不可见&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Modifiable = Write&lt;/strong&gt; → 属性可编辑&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;4-deploy-部署数据模型&#34;&gt;&lt;a href=&#34;#4-deploy-%e9%83%a8%e7%bd%b2%e6%95%b0%e6%8d%ae%e6%a8%a1%e5%9e%8b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;4. Deploy 部署数据模型
&lt;/h3&gt;&lt;p&gt;保存数据模型后，通过 BMIDE 的部署功能将数据模型写入数据库。部署完成后 log 显示 Success。&lt;/p&gt;
&lt;h3 id=&#34;5-验证数据模型&#34;&gt;&lt;a href=&#34;#5-%e9%aa%8c%e8%af%81%e6%95%b0%e6%8d%ae%e6%a8%a1%e5%9e%8b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;5. 验证数据模型
&lt;/h3&gt;&lt;p&gt;用管理员帐号登录 Teamcenter，通过 New → Item 可以看到 CommonItem 和 SampleItem。&lt;/p&gt;
&lt;h3 id=&#34;6-xml-rendering-stylesheet界面显示配置&#34;&gt;&lt;a href=&#34;#6-xml-rendering-stylesheet%e7%95%8c%e9%9d%a2%e6%98%be%e7%a4%ba%e9%85%8d%e7%bd%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;6. XML Rendering Stylesheet（界面显示配置）
&lt;/h3&gt;&lt;p&gt;通过 XML 样式表控制属性在界面上的显示顺序和分组：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;&amp;lt;property&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;name=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;a2_Customer&amp;#34;&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;&amp;lt;property&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;name=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;a2_MakeBuy&amp;#34;&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;7-lovlist-of-values创建&#34;&gt;&lt;a href=&#34;#7-lovlist-of-values%e5%88%9b%e5%bb%ba&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;7. LOV（List of Values）创建
&lt;/h3&gt;&lt;p&gt;在 Extensions 下的 LOV 文件夹中创建值列表，或通过 XML 导入：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;&amp;lt;TcLOV&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;name=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;A2_Effects_lov&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;lovType=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;ListOfValuesString&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;usage=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;Exhaustive&amp;#34;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   &lt;span class=&#34;nt&#34;&gt;&amp;lt;TcLOVValue&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;value=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;Environment&amp;#34;&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   &lt;span class=&#34;nt&#34;&gt;&amp;lt;TcLOVValue&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;value=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;Hardware&amp;#34;&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   &lt;span class=&#34;nt&#34;&gt;&amp;lt;TcLOVValue&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;value=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;Software&amp;#34;&lt;/span&gt; &lt;span class=&#34;nt&#34;&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;&amp;lt;/TcLOV&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;blockquote&gt;
&lt;p&gt;💡 BMIDE 建模是零代码开发，但需要深入理解 TC 的数据模型结构。建议先掌握 Item/Revision/Form 的关系再进行扩展。&lt;/p&gt;
&lt;/blockquote&gt;
</description>
        </item>
        
    </channel>
</rss>
