🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
### 前言 ### [Teamcenter2007 安装步骤 ](http://blog.csdn.net/oscar999/article/details/8778829) 承接以上那篇。 TC的正式环境搭建出来之后,就可以搭建开发的环境了。 在TC中所谓的正式环境和开发环境的区别是: 1. 这是环境就是TC本身提供的OOTB的环境。 2. 开发环境是在正式环境基础之上,扩充一些自己的模块和功能。 开发环境依赖正式环境, 因为很多服务还是使用正式环境的, 所以没有正式环境,开发环境也就无从谈起。 ### 开发搭建步骤 基本上是在命令行下进行的。 1. 到正式环境config 目录下 run  pdmsetup 2. run   mktstenv (会提示输入数据库等相关信息,需要有数据库的system帐号, 耗费时间会比较长) 创建完成之后会自行导入test.dat  的测试数据。 但是在有的版本中会有一些问题, 在test.dat 的 33216 行因为有换行导致导数据失败。 可以删除换行之后再手都导入一次。 (如果在这一步即使使用system 权限也总是出现数据库错误的话, 可以先把user 建立出来并给权限, 之后的选择就选使用已有的数据库) 3. run mkcusdir  产生开发的目录。 4. 要执行C 编译的话, 需要到pdmsetup.bat 文件加入 call D:\VStudio\Common7\Tools\vsvars32.bat 这个是随visual studio 安装的C 编译器 如果不需要使用vs 的界面功能的话, 也可以直接copy vs 的一些文件过来就可以了。 5. run mknewdir ; 产生开发的模组目录 如此环境就搭建完成了。 编译的命令在windows 下是 : nmake clobber clean cnvdef nmake init all ### 技巧之快速编译 如果模块很多的状况下使用 nmake clobber clean cnvdef nmake init all 这种全编译的方式会比较慢。 如果没有新增新的class, 或只是方法的内容修改的话, 可以使用 del svr\XXX.exe nmake init all 速度会超快 ### 技巧之更新数据库 TC 的Model 的类的相关定义 和DB 中的table 是对应的。 所以TC 使用tmti.prd 维系Model 的定义。 每次编译根据代码在svr目录下产生一个新的tmti.prd,  旧的被更名成 tmti.bak 放到上一级目录。 通过命令  updatedb -o tmti.bak -n svr\tmti.prd 比对这两者的差异产生更新数据库的sql. 基本上是: 新增产生 updatedb.sql(自动执行) 修改和删除属性产生alterdb.msql (需手动执行) 所以 .prd 和 .bak 这两者之间的配合就要默契了, 如果某天出现问题, 这两个内容相同, 但数据库中的却少了table 或是 字段的话, 一个一个的去查找错误添加属性,在差异不大的状况下也是可行,但是差异很大的话, 就要费很长时间了。 解决方法是: 用早期的或备份过的tmti.bak  和现在的tmti.prd 比对, 产生出sql 。 ### 技巧之重新构建数据库 如果数据库的改动太大,需要根据定义重新产生数据库的话,可以使用如下方法 **** ** ** **方法一** dropdb -p ......\env\test.pwf -f ......\env\cusdir\svr\tmti.prd initdb -n test -p .....\env\test.pwf -s site -f ......\env\cusdir\svr\tmti.prd **方法二** 1.msqlora -n xxxx.pwf -f schema.msql 2.msqlora -n xxxx.pwf -f initdb.msql 3.objload -f test.dat -k test.key 4,objload -f test.key 5.copy tmti.prd to cusdir\tmti.bak 6.updatedb -o tmti.bak -n svr\tmti.prd ### 技巧之产生 pwf 文件 - dbenc 如果哪天秘密忘记了。 可以修改这个user 的 秘密,再产生对应的pwf 文件 dbenc -o username.pwf username/password