Enovia MatrixOne

MatrixOne公司研制的全球第一套为产品开发过程的整个团队提供完善的电子业务解决方案的软件和服务系统,能够充分发挥 Internet/Intranet网络的作用和威力。它是物超所值,最灵活且最易扩展的跨越延展供应链的产品信息和生命周期过程管理的解决方案。 MatrixOne公司自1994年推出第一套基于其先进的思想理念和软件技术的PDM产品及服务以来,一直是全世界成长最快的软件公司之一,已经成为 PDM系统及电子商务系统的领导者之一。

  MatrixOne现已被Dassault System收购,收购后的MatrixOne产品被命名为Enovia MatrixOne,成为达索公司PDM/PLM产品系列Enovia 的一员。

     Dassault Systems的Enovia MatrixOne系统是全球第一个为产品开发及管理的工作团队提供广泛电子业务(e-Business)的解决方案。通过 Internet/Intranet,它使用Web来连接工作团队、过程和数据信息,能够极大地提高企业的工作效率和效益。使用Enovia MatrixOne,跨国跨区域性企业以及大中小型企业均可以通过Internet/Intranet来连接客户、协作厂家和企业员工来从事产品的开发, 透过虚拟集成的工作环境,公司能够根据客户的要求,以较低的价格和更快的速度将产品推向市场。

    Enovia MatrixOne是一个完整的产品开发过程电子业务软件和服务系统,适用于各种产品的概念设计、需求管理、产品研制、变更管理、试验管理、制造过程、技 术创新和程序管理等等。使用的行业包括航空航天、汽车机车、能源动力、机电制造、家用电器、IT产品、娱乐用品以及建筑和商业等。

    Enovia MatrixOne将传统的PDM概念引申至最新的电子商务解决方案,充分发挥Internet/Intranet的革性作用。在产品创新开发的范围内, 建立客户需求与供应商之间的紧密联系,Enovia MatrixOne能使企业的运作更顺畅,对客户的需求能够更快预测和反应,更好地引导设计链上的供应厂家,使得企业能够构架更好的战略部署。对能迅速开 展电子业务,提高协同工作能力进行产品开发的公司,将能够以Internet/Intranet的发展速度快速超越其竞争对手,得到重要的战略利益。

     Enovia MatrixOne自面市以来,已有300余家世界性企业使用,软件的授权超过5万套,是PDM和产品开发电子商务领域的领导者。它具有最好的技术先进性和前瞻性,同时也是全球实施成功率最高和给企业的投资回报最佳的系统之一。

物资编码与信息系统的考虑

公司决定标准化物资编码,通过物资编码来贯穿系统各功能,整合技术设计、物资采购、仓储管理、内部物流(物资)。

现在要考虑编码的预先编制组织,物资大类,编码交接后,最终维护归口部门及相关的组织;编码的应用系统的支持。

 参考的相关文献如下:

基于CIMS造船企业编码体系改进方案研究

 

彻底清除“苏中”模式,解放中国教育

[5165] (2008-10-18)

每年十月,我国的文学界总是唾面自干羞愧难当,有如男足。但凭什么啊,我国的科学界那么大的基数,那么巨的投入,光院士就上千号人,连个诺贝尔奖的疑似病例都没有,也没人说什么。怪只能怪文学界老是自己出搅屎棍子,科学界人家多安定,武大郎的店伙计,你好我好大家好。

  中国文学界,至少是想拿诺贝尔的,科学界贫困得连这个想法都没有。文无第一,诺贝尔文学奖备受争议,而诺贝尔科学奖一直是科学的金标 竿,甚少纰漏。共和国快五十年了,其文学、教育与科学都到了能拿诺贝尔的年龄了。中华民国的教育是出了杨振宁与李政道的,文学虽没拿诺贝尔,但鲁迅、沈从 文、艾青、钱钟书等等还是站得住的。共和国到了该反思的时候了。

  今年的诺贝尔虽然有钱氏家族,钱家和国内传媒却都很冷静。钱永健,人家是美国人,谁也不想拉关系了,甚至央视都认为“诺贝尔奖无中国身影,凸现中国教育科研体制弊端”。科学咱不谙行,教育我在其中,就说说教育吧。

  我是家长,儿子上初一,一开学光教材教辅就领回三十一本,国庆一过就月考,全校排名,小儿脸色惨白,除了作业就是作业,天天十一点,看着他一天天地对什么都失去兴趣(除了本能的,如球类、肉类),我咬牙切齿。

  我是教师,每年学校都要申报校级、市级、省级、国家级的课题,我总嗤之以鼻:看到名师名校长之流,我绕着走;听到什么教育思想,寒毛起 立。中国的教育课题多如牛毛,论文浩如烟海,名家泱泱如过江之鲫。但连一个最基本的问题都解决不了:教育是培养人而不是培养工具(奴隶)。

  从上世纪九十年代到今天,中国教育也陷入单一的GDP的增长模式,轰轰烈烈地铺摊子,轰轰烈烈地倒退,高等教育在扩招中泡沫化,基础 教育则一天天倒向应试教育、变本加厉。基础教育在“杀人”,消灭人的个性、自主性和创造力。这其中,以江苏省的“苏中”模式为最,在泰州、南通等地,以“ 升学率”为根本,一切为了“升学率”来办学,无限制地追求增长——“升学率”和招生数的增长,“苏中”又以“启东”“洋思”为代表。这些学校的最大成功就 是升学率的奇高,其模式就是“一个字訄,两个字死訄,三个字还是訄”(訄读入声,意为盘、压、逼),对老师、对学生的所有时间进行管制,“分数”就是一 切。“苏中”源源不断地向南京向外省输送这类教育人才,在各地由于见效快、升职快,迅速占据领导权力,在江苏几乎成了“苏中”模式的一统天下,只有苏州中 学等几所学校幸免于难。

  在这种“苏中”模式下,没有人,从校长到老师、学生全是机器,全是分数的奴隶。老师讲题目,学生做题目,题目是为了题目而题目,教师 知识结构越来越狭窄、丧失思想、没有境界、精神低矮,人事关系紧张、生理负荷达到极限、心理严重不健康。学生也是,我们培养的是被我们设计的题目设计了的 人才,一代一代的矮化,解题高手层出不穷,自主发现与探索的科学精神、自由与民主的人文精神愈来愈灭绝,不但使我们离诺贝尔奖也就越来越远,而且一个民族 也渐入沉疴。在八0后、九0后身上越来越重地散发出庸俗的世故气息,毫无痛感地和现实妥协,追求物质利益的最大化,远离自由、远离思想,这些都是中国教育 造成的。这样发展教育,中国也就危险了。

  发条越上越紧,战车越开越快,“升学率”的恶性竞争愈演愈烈,班主任、校长越来越独裁,越来越专制,学校、教育局(厅)就是集权王 国,中国教育陷入管制崇拜,倒退进集权模式,权力就是一切,说扩招就扩招,说改高考方案就改,江苏省每换一次教育厅长就换一次高考方案。教育应该是人的发 现、人的解放,进而是人的实现。“苏中”模式是人的压制、人的奴化,进而是人的消失。中国的自我更新,实赖于教育,教育的解放,必须清除“苏中”模式。

  但是很难,几乎是让人看不到希望的困难。在一个全权政治的国家,教育问题根子是政治问题。我们的国家到底需要的是自由的充满活力的人,还是机器(奴隶),这是教育的政治前提。这个政治问题解决了,一切迎刃而解。

  孙曙

Flex Runtime Errors-运行时错误列表

Detailed description of runtime error codes. Content TBD.

Code Message Description
1000 The system is out of memory. Flash needs more memory to compile your code than your system has available. Close some of the applications or processes running on your system.
1001 The method _ is not implemented.
1002 The precision argument must be between 0 and 20; got _ You specified a value less than 0 or greater than 20 for the precision argument of a method or property. Pass a value between 0 and 20 as a precision argument.
1003 The radix argument must be between 2 and 36; got _ You passed a value less than 2 or greater than 36 for the radix argument of a method or property. Pass a value between 2 and 36 as a radix argument.
1005 Array index is not an integer (_) You tried to access a member of an array using an index value that is not an integer. Pass only integers as index values for arrays.
1006 Call attempted on an object that is not a function. This error occurs when you attempt to call a function that does not exist. Make sure that you are calling the correct function, and that the API has not changed from ActionScript 2.0. Also, make sure that you are using the correct object. For example, you will see this error when you use the following code (because the last line mistakingly calls the variable big instead of blg):

var blg:String = "foo";            var big:Sprite = new Sprite();            var error:int = big.length(); 
1007 Instantiation attempted on a non-constructor.
1008 _ is ambiguous; more than one binding matches.
1009 null has no properties. An object that evaluates to null can have no properties. This error can occur in some unexpected (though valid) situations. For example, consider the following code, which creates a Sprite object. Since this Sprite object is never added to the display list (via the addChild() method of a DisplayObjectContainer object), then its stage property is set to null, and as such, its stage property cannot have any properties. So the code generates the errror:

import flash.display.Sprite;            var sprite1:Sprite = new Sprite();            var q:String = sprite1.stage.quality;
1010 undefined has no properties. This error can occur if you are trying to access a property of an object that does not exist. For example:

var obj:Object = new Object();            obj.a = "foo";            trace(obj.b.prop);

You can also see this error because of a mispelling, for example in the following, where mc represents a MovieClip object on the display list, and the stage property is misspelled with a capital S (it should be stage):

trace(mc.Stage.quality);
1011 Method _ contained illegal opcode _ at offset _. See the note at the bottom of this table. *
1012 The last instruction exceeded code size. See the note at the bottom of this table. *
1013 Cannot call OP_findproperty when scopeDepth is 0. See the note at the bottom of this table. *
1014 Class _ could not be found.
1015 Method _ cannot set default xml namespace See the note at the bottom of this table. *
1016 Descendants operator (..) not supported on type _.
1017 Scope stack overflow. See the note at the bottom of this table. *
1018 Scope stack underflow. See the note at the bottom of this table. *
1019 Getscopeobject _ is out of bounds. See the note at the bottom of this table. *
1020 Code cannot fall off the end of a method. See the note at the bottom of this table. *
1021 At least one branch target was not on a valid instruction in the method See the note at the bottom of this table. *
1022 Type void may only be used as a function return type See the note at the bottom of this table. *
1023 Stack overflow. See the note at the bottom of this table. *
1024 Stack underflow. See the note at the bottom of this table. *
1025 An invalid register _ was accessed. See the note at the bottom of this table. *
1026 Slot _ exceeds slotCount=_ of _. See the note at the bottom of this table. *
1027 Method_info _ exceeds method_count=_. See the note at the bottom of this table. *
1028 Disp_id _ exceeds max_disp_id=_ of _. See the note at the bottom of this table. *
1029 Disp_id _ is undefined on _. See the note at the bottom of this table. *
1030 Stack depth unbalanced. _ != _. See the note at the bottom of this table. *
1031 Scope depth unbalanced. _ != _. See the note at the bottom of this table. *
1032 Cpool index _ out of range _. See the note at the bottom of this table. *
1033 Cpool entry _ wrong type. See the note at the bottom of this table. *
1034 Type Coercion failed: cannot convert _ to _ See the note at the bottom of this table. *
1035 Illegal super expression in method _ See the note at the bottom of this table. *
1037 Cannot assign to a method _ on _ See the note at the bottom of this table. *
1038 _ is already defined You cannot declare a variable or function with the same identfier name more than once within the same scope. In ActionScript 3.0, different code blocks (such as those used in two for loops in the same function definition) are considered to be in the same scope. See the note at the bottom of this table. *
1039 Cannot verify method until it is referenced See the note at the bottom of this table. *
1040 RHS of instanceof must be a Class or Function The expression on the right-hand side of the instanceOf operator must be a class or function.
1041 RHS of operator must be a Class The expression on the right-hand side of the instanceOf operator must be a class.
1042 Not an ABC file. major_version=_ minor_version=_ You are attempting to use an invalid file with the player: Possibly the tool that generates the SWF is out of date or the SWF itself is corrupt.
1043 Invalid code_length=_ See the note at the bottom of this table. *
1044 MethodInfo-_ unsupported flags=_ See the note at the bottom of this table. *
1045 Unsupported traits kind=_ See the note at the bottom of this table. *
1046 MethodInfo-_ referenced before definition See the note at the bottom of this table. *
1047 No Entry Point Found See the note at the bottom of this table. *
1049 Prototype objects must be vanilla Objects See the note at the bottom of this table. *
1050 Cannot convert _ to primitive. See the note at the bottom of this table. *
1051 Illegal early binding access to _ See the note at the bottom of this table. *
1052 Invalid URI passed to _ function. See the note at the bottom of this table. *
1053 Illegal override of _ in _ See the note at the bottom of this table. *
1054 Illegal range or target offsets in exception handler See the note at the bottom of this table. *
1056 Cannot create property _ on _ You are trying to assign a value to a nonexisting property on a class that isn’t dynamic. This could occur at run time but not at compile time because the compiler passes over content within the array operator ([]).
1057 _ may only contain methods See the note at the bottom of this table. *
1058 Illegal operand type: _ must be _ See the note at the bottom of this table. *
1059 ClassInfo-_ referenced before definition See the note at the bottom of this table. *
1060 ClassInfo _ exceeds class_count=_. See the note at the bottom of this table. *
1061 The value _ cannot be converted to _ without losing precision This error appears if you attempt to assign a decimal number to a property of type int.

This error also appears for out-of-range assignments, such as the following:

var m0:int = 2147483648; // int.MAX_VALUE == 2147483647

You can also see this error when using the bitwise left shift operator (<<). For example, consider the following code:

var m0:uint = 0xFF;            var m1:uint = m0<<24;

The result of left shift operator (<<) is interpreted as a 32-bit two’s complement number with sign. In the example, the result is a negative value, which causes the error when assigned to the uint typed property. A workaround is the following:

var m0:uint = 0xFF;            var m1:uint = uint(m0<<24);
1063 Argument count mismatch on _. Expected _, got _
1064 Cannot call method _ as constructor Extracted methods are permanently bound to the object they are extracted from. Therefore, they can not later be called as a constructor. For example, the following creates function f() in Class A:

class A {            function f() {}            }

In the following code, extracting the function causes no error. However, creating a new instance of the function causes an error.

var a = new A()            var m = a.f    // extract f, don't call it            m()  // same as a.f()            new m() // causes this error
1065 Variable _ is not defined You are using an undefined lexical reference. For example, in the following statements, the statement print(x) generates an error because x is undefined. However, the statement print(y) doesn’t generate an error because y is defined:

print("hello world")            print(x) // x is undefined            var y            print(y) // No error, y is defined.
1066 Function(‘function body’) is not supported Unlike JavaScript, Flash does not compile code on the fly using eval() and function("print('hello world')").  Thus, calling these as a constructor in Flash generates this error.
1067 Native method _ has illegal method body See the note at the bottom of this table. *
1068 _ and _ cannot be reconciled See the note at the bottom of this table. *
1069 Property _ not found on _ and there is no default value You are referencing an undefined property on a sealed class. For example, the following generates this error when it references property x, which is not defined and can’t be created dynamically:

class A {}  // sealed class, not dynamic            print(new A().x) // no property x defined on A, and A is not dynamic
1070 Method _ not found on _ You are using a super statement to call a function, but the function doesn’t exist in the super class. For example, the following code generates the error:

class A() {}            class B extends A {               function f() { print(super.f()); } // error 1070, there is no f on A            }
1071 Function _ has already been bound to _
1072 Disp_id 0 is illegal. See the note at the bottom of this table. *
1073 Non-override method _ replaced because of duplicate disp_id _ See the note at the bottom of this table. *
1074 Illegal write to read-only property _ on _
1075 Math is not a function You are trying to call math() as a function, but math is a class with static methods.
1076 Math is not a constructor You can not instantiate the Math class.
1077 Illegal read of write-only property _ on _
1078 Illegal opcode/multiname combination: _<_> See the note at the bottom of this table. *
1079 Native methods not allowed in loaded code See the note at the bottom of this table. *
1080 Illegal value for namespace See the note at the bottom of this table. *
1081 Property _ not found on _ and there is no default value
1082 No default namespace has been set See the note at the bottom of this table. *
1083 The prefix “_” for element “_” is not bound. An attribute name or element name has a prefix but no matching namespace was found. This statement generates an error because there is no foo namespace to match foo:x:

<foo:x xmlns:clowns='http://circuscenter.com'>
1084 Element or attribute (“_”) do not match QName production: QName::=(NCName’:')?NCName You have foo: or :foo as an element or attribute name, but there is nothing on the other side of the colon.
1085 The element type “_” must be terminated by the matching end-tag “</_>”.
1086 The _ method works only on lists containing one item. The XMLList class propagates the XML-specific functions to one child if it only has one item in its list. If more than one item is in the list, the routines fail with this error. This happens for the following XMLList functions that mimic XML functions:

addNamespace, appendChild, childIndex, inScopeNamespaces, insertChildAfter, insertChildBefore, name, namespace, localName, namespaceDeclarations, nodeKind, prependChild, removeNamespace, replace, setChildren, setLocalName, setName, and setNamespace.

1087 Assignment to indexed XML is not allowed.
1088 The markup in the document following the root element must be well-formed. These are some possible causes of this error:

1089 Assignment to lists with more than one item is not supported
1090 XML parser failure: element is malformed An element name is malformed. This example of an element name is malformed because a trailing right angle bracket > is missing:

<a/><b></b
1091 XML parser failure: Unterminated CDATA section
1092 XML parser failure: Unterminated XML declaration
1093 XML parser failure: Unterminated DOCTYPE declaration
1094 XML parser failure: Unterminated comment
1095 XML parser failure: Unterminated attribute
1096 XML parser failure: Unterminated element
1097 XML parser failure: Unterminated processing instruction
1098 Illegal prefix ‘_’ for ‘no namespace’. The namespace constructor throws this error if you try to pass in an empty URI with a non-empty prefix as in this example:

ns = new Namespace ("prefix", "");
1100 Cannot supply flags when constructing one RegExp from another. Creating a new regular expression from an existing one also copies its flags. To create a regular expression with different flags, use the new operator and set the flags as desired. For example, this statement creates a regular expression and specifies flag settings: var re:RegExp = new RegExp(“ali”, /s)


Alternatively, this statement creates a regular expression that has the same flags as re:

var re2:RegExp = new RegExp(re, ...)
1101 Cannot verify method _ with unknown scope See the note at the bottom of this table. *
1102 Illegal default value for type _ See the note at the bottom of this table. *
1103 Class _ cannot extend final base class See the note at the bottom of this table. *
1104 Attribute “_” was already specified for element “_”.
1107 The ABC data is corrupt, attempt to read out of bounds See the note at the bottom of this table. *
1108 The OP_newclass opcode was used with the incorrect base class See the note at the bottom of this table. *
1109 Attempt to directly call unbound function _ from method _ See the note at the bottom of this table. *
1110 _ cannot extend _ See the note at the bottom of this table. *
1111 _ cannot implement _ See the note at the bottom of this table. *
1112 Argument count mismatch on class coercion. Expected 1, got _
1113 OP_newactivation used in method without NEED_ACTIVATION flag See the note at the bottom of this table. *
1114 OP_getglobalslot or OP_setglobalslot used with no global scope See the note at the bottom of this table. *
1115 _ is not a constructor
1116 second argument to Function.prototype.apply must be an array
1117 Invalid XML name: _
1118 Illegal cyclical loop between nodes
1119 Delete operator not supported with operand of type _.
1120 Cannot delete property _ on _
1121 Method _ has a duplicate method body
1122 Interface method _ has illegal method body
1123 Filter operator not supported on type _.
1500 Error opening file ‘_’.
1501 Error writing to file ‘_’.
1502 A script has executed for longer than 15 seconds.
1503 A script did not exit in a timely fashion and was terminated.
1504 End of file
1505 The string index _ is out of bounds; must be in range _ to _.
1506 The range specified is invalid.
1507 Argument ‘_’ may not be null.
1508 The value specified for argument ‘_’ is invalid. You are possibly trying to pass the wrong data type. For example, the code

public function doSomething(const:int):void {            }            this ["doSomething"] ("str")

generates an error at runtime because doSomething is cast as an int data type.

1509 There was an error decompressing the data. The de-compressor reached the end of the stream, but more data was expected. The compressed data stream is probably corrupted.
2000 No active security context.
2001 Too few arguments were specified; got _, _ expected.
2002 Operation attempted on invalid socket.
2003 Invalid socket port number specified.
2004 One of the parameters is invalid.
2005 Parameter _ is of the incorrect type. Should be type _.
2006 The supplied index is out of bounds.
2007 Parameter _ must be non-null.
2008 Parameter _ must be one of the accepted values.
2009 This method cannot be used on a text field with a style sheet.
2010 Untrusted local files are not permitted to use sockets.
2011 Socket connection failed to _:_.
2012 _ class cannot be instantiated.
2013 Feature can only be used in Flash Authoring.
2014 Feature is not available at this time.
2015 Invalid image.
2016 Asset with ID _ could not be found.
2017 Only trusted local files may cause the Flash Player to exit.
2018 System.exit is only available in the standalone Flash Player.
2019 Depth specified is invalid.
2020 MovieClips objects with different parents cannot be swapped.
2021 Object creation failed.
2022 Class _ must inherit from DisplayObject to link to a symbol.
2023 Class _ must inherit from Sprite to link to the root.
2024 An object cannot be added as a child of itself.
2025 The supplied DisplayObject must be a child of the caller.
2026 An error occurred navigating to the URL _.
2028 Local untrusted file _ may not access Internet URL _.
2029 This URLStream object does not have a stream opened.
2030 End of file was encountered.
2031 Socket Error.
2032 Stream Error.
2033 Key Generation Failed.
2034 Invalid Key.
2035 URL Not Found.
2036 Load Never Completed.
2037 Functions called in incorrect sequence, or earlier call was unsuccessful.
2038 File I/O Error.
2039 Invalid remote URL protocol. The remote URL protocol must be HTTP or HTTPS.
2041 Only one file browsing session may be performed at a time.
2044 Unhandled _:.
2045 The digest property is not supported by this load operation.
2046 The preload operation requires a digest.
2047 Security sandbox violation: _: _ may not access _.
2048 Security sandbox violation: _ may not load data from _.
2049 Security sandbox violation: _ may not upload data to _.
2051 Security sandbox violation: _ may not evaluate scripting URLs within _.
2052 Only String arguments are permitted for allowDomain and allowInsecureDomain.
2053 Security sandbox violation: _ may not clear an interval timer set by _.
2054 The value of Security.exactSettings cannot be changed after it has been used.
2055 The print job could not be started.
2056 The print job could not be sent to the printer.
2057 The page could not be added to the print job.
2058 There was an error decompressing the data.
2059 Security sandbox violation: _ may not overwrite an ExternalInterface callback added by _.
2060 Security sandbox violation: ExternalInterface caller _ may not access _.
2061 No ExternalInterface callback _ registered.
2062 Children of Event must override clone() {return new MyEventClass (…);}.
2063 Error attempting to execute IME command.
2064 Mouse capture has already been set.
2065 The focus cannot be set for this target.
2066 The Timer delay specified is out of range.
2067 The ExternalInterface is not available in this container. ExternalInterface requires Internet Explorer ActiveX, Firefox, Mozilla 1.7.5 and greater, or other browsers that support NPRuntime.
2068 Invalid sound.
2069 The Loader class does not implement this method.
2070 Security sandbox violation: caller _ may not access Stage owned by _.
2071 The Stage class does not implement this property or method.
2072 There was a problem downloading the application.
2073 There was a problem saving the application to disk.
2074 The stage is too small to fit the download ui.
2075 The downloaded file is invalid.
2076 There was an unexpected error in the download.
2077 This filter operation cannot be performed with the specified input parameters.
2078 The name property of a Timeline-placed object cannot be modified.
2079 Classes derived from Bitmap can only be associated with defineBits characters (bitmaps).
2080 setCapture can only be called inside of a mouseDown handler.
2081 Bitmap constructor requires a BitmapData object.
2082 Connect failed because the object is already connected.
2083 Close failed because the object is not connected.
2084 The AMF encoding of the arguments cannot exceed 40K.
2085 Parameter _ must be non-empty string.
2086 A setting in the mms.cfg file prohibits this FileReference request.
2087 The FileReference.download() file name contains prohibited characters.
2088 The Proxy class does not implement getProperty. It must be overridden by a subclass.
2089 The Proxy class does not implement setProperty. It must be overridden by a subclass.
2090 The Proxy class does not implement callProperty. It must be overridden by a subclass.
2091 The Proxy class does not implement hasProperty. It must be overridden by a subclass.
2092 The Proxy class does not implement deleteProperty. It must be overridden by a subclass.
2093 The Proxy class does not implement getDescendants. It must be overridden by a subclass.
2094 Event dispatch recursion overflow.
2095 Unhandled exception with asynchronous handler _.
2096 The HTTP request header _ may not be set via ActionScript.
2097 The FileFilter Array is not in the correct format.
2098 The loading object is not a .swf file, you cannot request SWF properties from it.
2099 The loading object is not sufficiently loaded to provide this information.
2100 The ByteArray parameter in Loader.loadBytes() must have length greater than 0.
2101 The String passed to URLVariables.decode() must be a URL-encoded query string containing name/value pairs.
2102 The before XMLNode parameter must be a child of the caller.
2103 XML recursion failure: new child would create infinite loop.
2104 BitmapData.draw can not render cross-domain objects.
2105 The Proxy class does not implement nextNameIndex. It must be overridden by a subclass.
2106 The Proxy class does not implement nextName. It must be overridden by a subclass.
2107 The Proxy class does not implement nextValue. It must be overridden by a subclass.
2108 Scene _ was not found.
2109 Frame label _ not found in scene _.
2110 The value of Security.disableAVM1Loading cannot be set unless the caller may access the stage and is in an AVM2 movie.
2111 Security.disableAVM1Loading is true so the current load of the AVM1 movie has been blocked.
2112 Provided parameter LoaderContext.ApplicationDomain is from a disallowed domain.
2113 Provided parameter LoaderContext.SecurityDomain is from a disallowed domain.
2114 Parameter _ must be null.
2115 Parameter _ must be false.
2116 Parameter _ must be true.
2117 Security sandbox violation: Non-import loading was requested (LoaderContext.securityDomain = null) but an LoaderContext.applicationDomain was in a different domain than the requested movie.
2118 The LoaderInfo class does not implement this method.
2119 Security sandbox violation: caller _ may not access LoaderInfo.applicationDomain owned by _.
2120 Security sandbox violation: _: _ may not access _.
2121 Security sandbox violation: _: _ may not access _.
2122 Security sandbox violation: _: _ may not access _. Policy files are still being accessed.
2123 Security sandbox violation: _: _ may not access _. No policy files granted access.
2124 Loaded file is an unknown type.
2125 Security sandbox violation: _ may not use Runtime Shared Library _ because crossing the boundary between AVM2(ActionScript 3.0) and AVM1(ActionScript 1.0 or ActionScript 2.0) objects is not allowed.
2126 NetConnection object must be connected.
2127 FileReference POST data cannot be type ByteArray.

* Note: This error is thrown while the compiler is checking the bytecode; that is, before executing the code. Under normal circumstances, you should never see this error. If you are using the Macromedia compiler and see this error, please file a compiler bug at [page tbd]. If you are using a third-party compiler and see one of these errors, please notify the compiler developer.

一卡通工程实施日志-考勤上线

今天一卡通工程实施第一阶段第二步完成考勤上线,在上线之前召开了准备工作会议,召集人事部、安保部、行政部一起讨论工作安排,形成大家共识的会议纪要。
做项目一方面技术要有支撑,重要的还是如何协调和组织实施工作,好多工作都是各部门协同来完成。
在组织实施时要有统一的认识,所有的参与部门做好工作分工,以及相关的流程变动,在实施时尽可能不要触及公司的组织调整,是方法方式变通,实施完成后沉淀下来的管理经验再通过有效分析形成公司的新的制度。
不然项目肯定会有更多的波折,影响项目的进度和成败。

物资编码的专家咨询会

经过昨天晚上的加班赶出关于物资编码参考的方案,今天在上海参加了由总部组织的物资编码专家咨询会,赶到上海开了30分钟不到的时间,就结束了会议,原因是我们错过了开会的时间,在上海外环高架上花费了近2个小时才到浦东。

 不过很荣幸认识了不少朋友,且有老朋友相聚,真是感谢总部的领导。看来造船行业这个圈子比较小。

(物资编码的专家咨询会PPT)

组织实施一卡通系统工程

今天开始组织实施公司的一卡通系统工程,明天组织换发新卡,这项工作量是最大的,还要将旧卡的余额进行结转,面对的是公司的所有本工和劳务工。

11月将组织发放所有外包工的卡片,这个量更是巨大,而且复杂是的不是系统,而是面对的前期以前部门对外包员工的统计工作没有很扎实,将会带来很多错误。

windows下利用OpenVPN搭建VPN服务器

 

信息来源:邪恶八进制信息安全团队(www.eviloctal.com
文章作者:pt007[at]vip.sina.com 版权所有 转载需注明作者

注:文章首发I.S.T.O信息安全团队(http://blog.csdn.net/I_S_T_O),后由原创作者友情提交到邪恶八进制信息安全团队。

一、OpenVPN是一款功能强大,可跨平台(支持Win 2000/XP/2003, Linux, Mac OS X, Solaris, FreeBSD, NetBSD, 和 OpenBSD)使用的SSL VPN服务器软件(具体说明见官方主页官方主页)。

openvpn-2.1_beta16命令行版,下载地址 http://openvpn.net/download_action.php?openvpn-2.1_beta16-install.exe
也可以下图形版。

二、安装与配置

第一步:安装openvpn
这一部分是服务端跟客户端都要做的工作,操作完全相同
双 击 openvpn-2.1_beta16-install.exe进行安装,点击NEXT,I Agree,NEXT之后开始选择安装路径,我手动修改为C:\Program Files\OpenVPN 。点击 Install 开始安装,安装过程中,弹出硬件安装窗口,点击仍然继续,安装虚拟网卡。点击 next,Finish 完成安装。

第二步: VPN服务器配置:
说明:架设OPENVPN服务器,服务器方面做的工作比较多,客户端相对来说就比较简单。
服务器采用RSA证书和密钥验证方式对客户端进行验证,默认情况下证书和用户是一对一的,多个用户使用同一证书会被踢出。所以首先要做的工作就是证书的制作。

在进行操作之前,首先进行初始化工作:
(1)修改C:\Program Files\OPENVPN\easy-rsa\vars.bat.sample的以下部分
set HOME=%ProgramFiles%\OpenVPN\easy-rsa

set KEY_COUNTRY=US

set KEY_PROVINCE=CA

set KEY_CITY=SanFrancisco

set KEY_ORG=FortFunston

set KEY_EMAIL=mail@domain.com

请根据自身情况修改,也可以不修改,改为

set HOME=C:\Program Files\OPENVPN\easy-rsa

set KEY_COUNTRY=CN #(国家)

set KEY_PROVINCE=GuangDong #(省份)

set KEY_CITY=ShenZhen #(城市)

set KEY_ORG=oovc.com #(组织)

set KEY_EMAIL=admin@oovc.com #(邮件地址)

上面#开始的是注释,请不要写到文件中。
打开命令提示符:

开始–>运行…–>键入cmd,回车,进入命令提示符

或者 开始–>程序–>附件–>命令提示符

进入C:\Program Files\openvpn\easy-rsa目录下:
命令如下:
(1)cd C:\Program Files\openvpn\easy-rsa

init-config

vars

clean-all

上面是初始化工作,以后,在进行证书制作工作时,仍旧需要进行初始化,但只需要进入openvpn\easy-rsa目录,运行vars就可以了,不需要上面那些步骤了。

(2)下面开始证书的制作:
生成根证书:(请输入红字部分)
build-ca

build-dh

生成服务端密钥:
build-key-server server


生成客户端密钥
build-key client1

build-key client2 //可以继续配置第二个VPN客户端密钥

//生成的密钥存放于C:\Program Files\openvpn\easy\rsa\keys目录下

接下来开始配置服务器和客户端:
(3)将生成的ca.crt,dh1024.pem,server.crt,server.key复制到C:\Program Files\OPENVPN\KEY目录下,这四个文件是VPN服务端运行所需要的文件。
(4)ca.crt,client.crt,client.key是VPN客户端所需要的文件,复制到客户端C:\Program Files\OPENVPN\KEY目录下
(5)在C:\Program Files\OpenVPN\config目录下创建server.ovpn:
服务器端文件示例:(server.ovpn)
local 192.168.3.1 #建立VPN的IP

port 443 #端口号,根据需要,自行修改,如果是用http代理连接,请不要修改

proto tcp-server #通过TCP协议连接

dev tap #win下必须设为tap

server 192.168.0.0 255.255.255.0 # 虚拟局域网网段设置,请根据需要自行修改,不支持和拔号网卡位于同一网段

push "route 0.0.0.0 0.0.0.0" #表示client通过VPN SERVER上网

keepalive 20 180

ca "C:\\Program Files\\OPENVPN\\KEY\\ca.crt" #CA证书存放位置,请根据实际情况自行修改

cert "C:\\Program Files\\OPENVPN\\KEY\\server.crt" #服务器证书存放位置,请根据实际情况自行修改

key "C:\\Program Files\\OPENVPN\\KEY\\server.key" #服务器密钥存放位置,请根据实际情况自行修改

dh "C:\\Program Files\\OPENVPN\\KEY\\dh1024.pem" #dh1024.pem存放位置,请根据实际情况自行修改

push "redirect-gateway def1"

push "dhcp-option DNS 219.141.140.10" #DNS,请根据实际情况自行修改

mode server

tls-server

status "C:\\Program Files\\OPENVPN\\log\\openvpn-status.log" #LOG记录文件存放位置,请根据实际情况自行修改

comp-lzo

verb 4

(6)客户端设置:在客户端安装完成之后,需要将 ca.crt client.crt client.key 这三个文件拷贝到C:\Program Files\openvpn\key目录下,这三个文件由服务端生成,所以,连接谁的服务器,就需要跟谁索取这三个文件

然后,编辑一个 client.ovpn的配置文件存放到C:\Program Files\openvpn\config目录下,客户端就可以进行连接了。

客户端文件示例:(client.ovpn)
client

dev tap #windows下面用tap,LINUX下用tun

proto tcp-client

remote 192.168.3.1 443 #VPN服务器的域名或IP 端口

resolv-retry infinite

nobind

#http-proxy 192.168.1.1 80 #这里填入你的代理服务器地址和端口

mute-replay-warnings

ca "C:\\Program Files\\OPENVPN\\KEY\\ca.crt"

cert "C:\\Program Files\\OPENVPN\\KEY\\client.crt" #这里改成每个客户端相应的证书

key "C:\\Program Files\\OPENVPN\\KEY\\client.key" #这里改成每个客户端相应的密钥

comp-lzo

verb 4

status openvpn-status.log

(7)其它设置:
上面的配置拔号成功后,VPN SERVER的IP:192.168.0.1

VPN client的IP:192.168.0.2

ping 192.168.0.1 //相互之间应能ping通

然后设置VPN SERVER上的”internet连接共享“来实现clinet通过VPN SERVER上网:(需要两块网卡)

(8)VPN服务端命令行启动:
"C:\Program Files\OpenVPN\bin\openvpn" "C:\Program Files\OpenVPN\config\server.ovpn" //启动VPN到443端口

(9)VPN客户端命令行连接:
"C:\Program Files\OpenVPN\bin\openvpn" "C:\Program Files\OpenVPN\config\client.ovpn"

船舶信息化建设难点、要点和重点

王毅(广州广船国际股份有限公司副经理)
    当前全球航运市场的复苏和中国建设国际航运中心速度的加快,让造船业迎来了快速发展时期。我国已经是造船第三大国,各造船企业的制造设备、工厂条件与国际先进水平差距不大,但信息化技术和管理技术依然落后,导致生产效率相对低下。
    我国专家曾经以国际通用的68个要素、340项标准评估我国骨干船厂,发现我国与世界先进水平的综合差距为 15年,其中,精度控制技术相差15年,组织与管理体制的差距为18年,信息技术应用方面的差距为19年,由此可见信息化技术的差距之大。国内造船企业的 信息化水平虽然存在着差异,但在信息化建设上的状况却存在相同之处,具体表现在:
    1.缺乏一体化、集成化的设计系统,与生产进程联系不够紧密。虽然国内很多企业引进了一些集成程度较好的设计系统,但各自应用程度不一,仅仅解决了大部分 “甩图板”的工作,其生产设计图纸中物量及制造信息没能充分及时反映,相关数据库有待建立与充实。不能自动更改设计错误,不能自动、无缝地抽取有关信息生 成BOM表,供后续工序或软件应用。
    2.众所周知,船舶行业的零部件数量是很庞大的,目前国内对船舶零部件标准化程度和日韩相比差距较大,同时也缺乏真正可执行的行业统一编码,使得各企业之间、企业内部本身无法做到信息共享和集成。
    3.信息采集手段落后,收集生产数据管理困难。由于信息共享度低,且多为手工输入,反馈速度慢,难以分类汇总及迅速检索。
    4.在中国造船企业中,材料设备成本要占造船成本的60—70 %以上。由于缺少统一的物资、物流管理系统,无法将正确的零部件产品(Right Product)在正确的时间(Right Time)、 按照正确的数量(Right Quantity)、正确的质量(Right Qulity)和正确的状态(Right Status)送到正确的地点(Right Plac e)——即“6R”,导致对物资采购、仓储配送的时间、位置及数量难以有效控制。
    5.目前国内还没有一个功能全面又贴近造船企业应用的生产日程计划系统,因此难以每日对作业班组、场地、设备及物资等方面做预先安排;难以实现与生产中心模式相匹配的计划管理与工作流程控制;难以模拟、分析计划进程,对人力、设施进行资源平衡。
    6.造船企业的成本管理工作是一项系统工程,应强调整体与全局,需对企业成本管理的对象、内容、方法进行全方位的分析研究。目前国内企业还缺乏贯串整个造 船业务过程的成本管理系统,就无法进行准确而及时的成本计划、成本预测、成本分析、成本核算等工作。要使企业产品在市场上具有强大竞争力,一套功能强大、 实用的成本管理系统是必要的,而且应覆盖产品经营、设计、制造、售后等过程,但国内造船企业还缺少相应配套信息系统如经营、生产、计划、物资等系统,成本 信息不充分,难以实现对人力、物资、设施及资金的准确控制。
    7. 绝大部分船厂质量管理没有形成统一系统,各生产单位虽都有较强的质量意识,也有一套质量管理考核办法,但对产品质量的追踪、分析和控制有较大的难度。因此 如果建立一个与整个产品周期的质量控制、计划、分析、管理相配套的质量信息系统,就可以实现质量信息的及时跟踪、分析,质量过程的控制效率也会大大提高。
    同时,在造船企业的信息化实施过程中,经常会遇到很多难点,有技术上也有管理上的。只有认识到这些困难并加以克服,才能使企业信息化走上一条宽阔的“快速道”。
    首先,造船信息化是一个庞大和深奥的课题,不是一蹴而就的,应该采取“总体布局、分步实施、重点突破”的思路。既要克服夜郎自大、自欺欺人的毛病,也要防 止避重就轻、表里不一的情况出现。不要因实施了几个模块或非主流模块,就大肆宣扬企业如何信息化、数字化等等,这可能使企业信息化误入歧途。也有的企业仅 仅是对周边的业务流程进行了信息化,而对开发难度大的主流业务流程信息化工作搁置一边或长期拖延下去,或者仅仅是对重要业务流程开发出了部分功能,而关键 的一些功能并不具备,这样的实施战略也应该彻底改变,企业信息化必须迎难而上、重点突破。当然这里也存在资金投入、技术障碍和本身管理上的因素,但企业信 息化是一项长期的战略任务,应该坚定目标,持久、努力去开发和实施,不要轻言放弃,才能最终取得突破。
    其次,在选择信息化的途径上,既要重视引进、学习国外先进技术,同时也要注意消化吸收和加强二次开发,要克服“唯我自大”和“洋学至上”的思想。引进国外 大型信息化系统时,要注意对方系统船厂对象的管理和生产模式是否真正与我们本身相符或相近,其成功案例的情况如何。引进系统前应组织专业人才对信息系统做 深入、充分的调查分析,并进行合理评估。这些工作对大型信息化系统的引进和实施是非常关键的,否则系统性风险相当大,容易造成人力、物力和资金的重大损 失。目前国内已有船厂在进行此类尝试,并积累了丰富的经验,这对我国造船企业今后有很好的借鉴作用。不管是系统引进还是企业独自开发,培育企业本身的开发 能力无论何时都是重要的,引进的系统肯定存在着二次开发工作,否则系统的应用效率会受影响。另外,有能力的企业也可以自己开发一些信息化系统,使信息化系 统更加贴近企业应用并节约信息化投资,使有限资金投入到一些关键项目的引进上去。
    此外,根据国外经验,庞大的信息化工程如CIMS、ERP等系统要依靠大量的技术人才,包括管理技术专家(需要了解ERP、MRPII、SCM、PLM、 CIMS,能分析诊断实施过程中的管理问题)、造船专家(掌握现代造船设计、生产组织、物流管理技能,能分析优化生产流程,处理相关数据)、计算机专家 (具备系统总体设计能力、系统分析能力,能掌握软件分析,数据处理转换核心技术,系统集成技能)等。而我国大部分造船企业这方面的人才非常之缺乏,如何培 育、重视并且留住这方面的人才值得企业的管理层予以高度关注。
    再有,造船信息化的过程还是企业管理模式转变和业务流程优化的过程,一个传统企业要改变其管理方式和业务流程会遇到很大阻力,这点往往也成为信息化实施成 败的一个关键因素。目前我国大部分船厂属于国有大型企业,管理模式改变、流程再造和优化工作的推进难度很大,因此必须在管理上下功夫,改变传统方式,方能 保证信息化系统的成功实施。
   
    许平(外高桥造船总经理助理)
    造船企业信息化难点分析
    造船企业信息化是一个系统工程。CIMS软件本身仅是一种工具,是汇总信息的平台。如果用交通作比喻的话,CIMS软件就是高速公路的信号系统和配货系 统。要使交通顺畅高效,首先必须建好高速公路(业务模式及流程),制订相应的交通规则(管理体系与操作标准),统一车辆运行标准(编码与基础标准);同时 重点还要认真准备装载的货物(产品工程数据),培训驾驶员和交管员(操作人员、生产管理者)。
    用外高桥船厂SWS专家陈开国的话来说,实施CIMS有八方面工作:业务流程、组织结构、岗位固化、作业标准、人力资源、数据准备、软件系统和全员培训。 其中任何一项没做好,都会影响实施效果。除软件系统外,其他七方面工作都需要我们“以我为主”,从企业实际出发,根据CIMS要求来创造性地开展相关工 作。
    造船企业实施CIMS难点有:
    对业务模式要求较高
    大型集成管理软件比以前单项软件要复杂得多。由于我们的CIMS要求实行的是日韩船厂普遍采用的“一级工艺、一级计划、一级用工、一级核算”管理模式, 对计划精度和准确性要求高,要求生产必须达到相对均衡,计划可控。
    要实现“协同作业,均衡生产”目标,就必须在实施CIMS的同时,实现管理规范化和业务标准化。
    管理规范化主要包括:
    ● 重构企业管理体制和业务模式,建立相适应的组织体系与运行模式。
    ● 按现代造船模式要求,制订协同作业规则,建立均衡生产的统一指挥体系。
    ● 及时建立完善科学管理体制、机制与制度,推行规范化管理,巩固实施成果。 业务标准化包括:
    ● 建立必要数据标准。注重工艺深化,合理修改完善系统运行所需的编码、部件库、工艺、作业规范等基础标准与制造数据库,推进设计参数和制造工艺标准化。
    ● 生产设计准确完整。合理确定各生产环节的产品建造任务包层次、结构与数量值。不断提高设计信息、物流信息、管理信息的完整性和准确性。 ● 建立有效质量管理、班组管理和现场管理体系。
    ● 建立有效物流管理体系,有效提高生产准备水平。
    对人员素质要求较高
    CIMS系统运行要求“任务包按作业物量和工作量确定,作业计划按作业能力排定”。要使生产计划安排得合理,首先要保证生产能力的稳定,也就是生产人员要求技能与负荷能力相对稳定。生产指挥人员,包括班组长具有一定的管理素质。
    对软件技术与系统实施能力要求较高
    (1)统一性:必须具备合理的编码体系和基础数据架构,能够对物资编码、作业代码、生产计划、工作任务包、托盘清单等大量基础信息进行统一整合。
    (2)集成性:必须掌握有关信息技术和二次开发能力,能够较好地实现系统的本地化和客户化,能将相关业务信息集成在统一的信息平台上,及时准确地收集、处理、传输与存储各类管理信息。
    (3)可靠性:系统与相关数据库可靠程度高,信息能在不同系统间实现无缝转换,形成设计、生产、物流与管理系统的一体化。
    (4)应用性:要求具备很强的咨询实施能力,能提供关键配套技术资料(编码体系、过程建模、资源配置、数据支撑、相关标准),能够指导管理体系和业务模式再造。
    对企业文化要求较高
    CIMS应用的核心理念是JIT(Just in time),而JIT又以“拉动生产、作业高效、自主管理、持续改进”为主要手段。CIMS可以从局部开始应用,但要体现整体效应,则必然是整体的、长期 的行为,是一个全员参与的、思想统一的过程。“拉动生产、作业高效”需要相应的管理理念和管理氛围,“自主管理”需要员工有共同的价值取向,认同感和归属 感,“持续改进”需要全员、全过程的积极参与。 
   
    陈建榕(广船国际总经理助理)
    我们的造船企业信息化体系包括了:设计的CAD/CAM、KCS tribon、PDM、生产管理信息系统、CRM(客户关系管理)、SCM(供应链管理)、OA办公自动化(或EIP企业信息门户)。当前我们造船企业的 信息化体系的薄弱环节是生产管理信息系统——工时管理体系的信息化!我们在推进造船生产管理信息化建设应吸取一些经验教训:
    1,意识关:管理信息系统的应用是三分技术、七分管理、十二分数据。意识决定行为,也既信息化建设是“一把手工程”。我们必须在管理上做很多的工作,中国人常说“磨刀不费砍柴功”,企业高层在推进信息化管理方面必须要做到“坚定信心、把握方向、资源保障、关键决策”。
    2, 普及性:应将“信息化”这一精英文化概念转变为广大造船人所普遍接受的大众文化。生产管理的信息化需要广大员工的密切配合和积极参与,只有这样数据的采集、统计、分析、反馈、决策才是一个完整的闭环体系,只有这样我们的推进工作方可见成效。避免“神秘化”、“复杂化”。
    3, 避免“信息化”的空壳化:缺乏数据库的“系统”只是漂亮的空壳,不顺畅的流程依然还会出现“瓶颈”以及信息链断裂问题。信息化建设不仅是一套先进的信息系统平台,关键要建立数据库、建立与系统相配套的管理模式、流程、规章制度和工作标准,建立强有力的推进机构。
    4, 信息化管理要与企业具体情况结合,要与我国的现有体制相结合:应有针对性的引进,避免生搬硬套,要在信息化的应用中找到关键切入点,切实解决企业普遍问题。
    我国造船企业的信息技术与先进发达的造船强国比较,差距是很大的,而且国内各造船企业之间的信息技术的发展也是极不平衡的。“技术差距”、“信息鸿沟”、 “数码鸿沟”,愈益成为这种差距的基础和突出表现。有些造船企业继续处在“信息贫困”之中和“数码鸿沟”的另一边,甚至几乎与信息经济无关,正面临着被“ 边缘化”的危险。 因此现在我们有必要对日渐形成的信息社会进行规划,并实施强有力的战略管理,使我们从信息技术中获益更多。 
   
    柯王俊(中船集团公司发展计划部副主任)
    船舶行业信息化建设的难点:
    1)船舶行业是一个较为古老的行业,几个渔民在沙滩上用一个三角架和神仙葫芦就可以造渔船,手工造船的历史比自动化造船要长久。信息化建设的观念改变有一定的阻力。
    2)船舶行业所涉及的专业众多,船上安装的数百种设备来自不同的行业,各行业信息化的程度差异很大。要统一在一个信息化平台上,有许多工作要做。
    3)船舶工业生产,无大批量生产的概念,单件小批量制造船舶是船舶行业的最大特点,这就注定了信息化建设的难度,每一条船的信息化建设都具有自已的特性,不能简单的重复和复制。
     船舶行业信息化建设的要点和重点:
    1)船舶整个行业标准化工作是实现信息化的关键条件之一;
    2)船舶行业的业务流程必须认真思考,在实现信息化的前期必须作好业务流程的重组;
    3)尽快实现船舶产品数据的管理(PDM)和数据库的建设;
    4)从船东头脑中产生船舶需求概念开始到船舶服役中止,都是一个信息模型不断改进和传递的过程。这个信息模型的构筑要面向整个船舶的生命周期。
    5)这一个信息模型应该是全方位的数字化,不仅能处理数值计算,还能处理非数值计算的工程问题。
    6)知识工程、专家系统、虚拟测试等的运用。造船行业中大量的知识都存储在工程师、工人的头脑中,如何把这些知识挖掘出来,加以整理,给予储存和继承是当今船舶行业信息化建设的要点和重中之重。
   
    苏翔(镇江金舟软件总经理)
    船舶制造企业的生产特点为大型单件小批量生产,具有如下管理特点:
    1)产品品种多、生产数量少、规格多变,按客户订单进行设计、生产,其工作的性质依客户要求的品种、规格、交货期、价格而定;
    2)产品各部件之间的时序约束关系和成套性要求严格,关键设备的能力平衡和利用率是生产与控制的关键环节;
    3)对交货期要求严格,且每次订单上所需求的产品同以往相同的不多,虽非全新产品,但可能在设计、大小、尺寸、形状上有新的变化,根据交货期,以订单中的独立需求为对象下达工号组织生产;
    4)产品结构复杂、生产周期长、重复作业比率低,较难采用流水线或专用工装设备生产,为了保证按期交货,企业一般难以在产品技术资料全部准备齐全后才开始生产,而是边设计、边生产、边修改,这是大型单件生产企业最显著的特点之一;
    5)生产组织困难:大型单件产品的生产组织要在完成产品设计和工艺后,才能编制出较为合理可行的生产计划和作业计划,生产准备周期较长,所以,在手工管理 的条件下,由于各部门、各工程之间的大量信息沟通不及时,生产组织不可避免地存在如下问题:相同零部件的技术资料不一致;生产资源冲突难以避免;产品总装 不能有效配套;物资供应难以保证;加工过程中难以实现限额发料;
    6)成本难以动态监控:大型单件生产是根据订单组织生产的,产品工艺成本及构成需在完成产品设计、工艺编制,形成物料清单、工艺线路、工时定额后才能确定;产品定额成本的控制视工程项目而不同,数据量大,从而导致成本控制困难;
    7)保证按期交货与目标成本控制是大型单件制造业管理所追求的目标。
    船舶制造业信息化的特点
    1)BOM的动态、复杂性:船舶产品没有一个相对稳定的BOM,BOM视工程项目的不同而不同;且由于船舶产品的复杂性,船舶产品的BOM一般较为复杂;
    2)工艺线路定额表是动态的:作为指导船舶产品生产的工艺线路定额表随工程项目的不同而不同,且结构复杂、数据量大;
    3)边设计、边生产、边修改现象普遍存在:生产、物资等部门必须及时对不断增加变化的技术资料进行增量接收,并在此基础上完善相关属性的描述。由于制造 BOM(MBOM)难以一次形成,为保证BOM流转的完整性、及时性、连续性,必须使ERP与CAD、CAPP/PDM间实现动态集成,MBOM随技术资 料的逐步完善而增量式的接收;
    4)目标成本的制定与控制是动态的:目标成本控制是在经营报价的基础上,进行目标成本分解,通过设计、采购、发料和制造等过程分别控制工艺成本、采购成本、材料消耗成本和制造成本,实现对船舶制造企业目标成本的全生命周期控制;
    5)围绕成本与交货期控制两个中心进行企业流程再造。 
   
    郑冬标(江南造船信息技术部副部长)
    船舶行业信息化建设的难点:“管理流程规范化”
    造船是一项工艺复杂、周期较长、协同要求高的复杂系统工程,同时由于船舶产品体积大、批量小、边设计边生产、自动化程度低、手工作业较多等特性,这严重地制约了船舶的信息化进程。
    信息化建设既是信息化全面改造的过程,也是管理流程规范化的一场深刻变革。管理流程规范化是企业主要业务流信息化、网络化、建立公用协同工作平台的前提条 件,也正是信息化建设的难点和挑战。在管理流程规范化过程中,将会面临巨大的阻力和不确定因素,只有持之以恒,下决心推进,才能最终取得成果;半途而废只 会产生更大的阻力和怀疑,已取得的成果也可能丧失殆尽。 
    船舶行业信息化建设的要点、重点:“明确接口,集成为本”
    企业信息化建设的重要目标是实现信息的共享和同步,跨接信息孤岛的现象。建设公司级的信息和数据传输的应用网络以及基于网络的公用工作平台,连接主要事业 部和决策部门成为信息化建设中的重中之重。明确各应用部门之间的信息交流方式、数据接口格式及内容是顺利实现跨接各种应用平台,实现信息互通的基础。
    在系统设计和开发过程中,为了减少将来企业集成成本,应加强信息化标准规范的制订和监督执行,这是一项在信息化建设中指导技术实现的基础工作。企业信息化标准规范的内容一般包括数据元素标准、编码标准、信息技术支撑标准、规范的实施方法等。
    利用企业应用集成技术(EAI),尽可能采用基于业务群、业务流和数据流的大型数据库,开放的网络和系统产品,统一的应用界面和应用程序,使应用统一、数据结构一致,便于推广普及、便于实现集团的统一管理和数据汇总,减少因技术不统一造成的集成损耗。
    在政策和公司资源投入上,向开放、统一集成的解决方案倾斜,尽可能减少单机和孤立系统所占的比例。在保证现有离散系统应用不受中断的前提下,初步实现离散应用的服务器上网,数据在内部网内流通,再实现信息共享和应用集成。 
   
    薛曾丰(中船十一所应用软件开发中心副主任)
    近年来,国内造船企业通过国外引进与自行开发相结合,在船体和舾装的计算机辅助设计方面有了较大的提高,基本实现了初步设计、详细设计和生产设计的CAD 化,明显增强了船舶设计和生产准备能力。但是,在管理思想、管理方法上的滞后,使得我们与造船先进国家相比在快速制造能力方面、在企业的柔性应对能力方 面、在生产效率和成本控制方面还存在着较大的差距。
    为了实施“造船第一大国”的战略目标,通过推进造船集成化的企业信息系统,加速实现向现代造船模式的转变是极为重要的竞争策略。企业信息系统是一个载体, 它承载的是企业管理思想和管理方法,一个先进的造船企业管理系统,体现的应该是现代造船模式下的组织形式、管理形式和管理方法,通过信息系统的平台,实现 精准的企业资源计划、严密的物料需求组织、合理的生产经营业务流程,从而达到企业高效率、低成本的运作。而不应单纯是将现有的生产管理和生产组织形式计算 机化。
    构建造船企业信息管理系统的重点是实现管理的‘精细化’和信息的‘集成化’。精细化是指建立严密有效的物料需求和物料供应体系、精确合理地安排企业的资源 计划和生产计划、准确及时地掌握和控制生产成本。船舶生产模式是典型的复杂产品订制生产模式,根据订单进行船舶设计、物料需求生成、设备材料采购、生产计 划、加工制造等一系列以计划为主线的、订单拉动式的生产组织活动。这一系列的过程相互之间是紧密联系且互相制约的,每一个环节的变动将引起各环节的一系列 变动,对于船舶这样高度复杂的产品,要达到均衡生产没有集成化的信息系统支持是难以实现的。
    为了建立集成化的造船信息系统,需要扎扎实实从基础工作做起。首先应大力开展如下研究:
    (1) 造船生产特性和ERP技术的造船解决方案研究
    ERP的理论和方法作为一种成熟的技术已经广泛用于一般制造业,如机械、电子等行业。造船业由于具有特殊性和复杂性,致使ERP在国内造船企业还没有得到 更多的应用。因此,对国内造船企业的生产特性和管理特性进行研究,结合现代造船生产模式和制造业的先进管理思想(如JIT、精益制造),提出适合国内造船 企业特点的造船生产管理系统的业务流模型,并在此基础上研究与之相适应的数据流模型,形成造船企业的ERP解决方案,以便利用成熟的ERP系统,尽快形成 造船生产管理信息系统具有十分重要的意义。
    (2) 信息标准化研究
    信息标准化是建立集成化的信息处理体系和高效的信息交换体系的基础,开展信息标准化研究是推进造船行业信息技术应用和实现信息互通和系统集成的重要途径。 研究符合造船信息系统要求的基础信息的属性描述和信息结构,如:物料基本信息、物料清单(BOM)信息、工艺路线和生产能力基本信息、托盘/分段信息等十 分重要。信息标准化研究包括:信息编码的标准化;数据结构、数据表达、存取方法的标准化;业务流程和信息交换接口的标准化。 同时,要扎实做好基础数据的收集整理工作,没有基础数据的支持,信息系统如同无米之炊,不能获得正确的结果、不能真正发挥作用。必须切实做好基础数据的积 累和整理工作,不断完善,逐步精确。只有准确的数据,才能获得精确的结果,才能实现精细化的管理。
    (3) 异构系统的信息集成和信息交换方法的研究
    多年来,国内造船企业通过引进和自行开发拥有了不少应用系统,如CAD/CAM系统和一些用于特定业务的管理系统。为了尽可能利用现有的系统资源,对现有 的基于不同系统平台和不同数据库的信息处理系统进行信息整合和信息交换方法的研究显得更为重要。为此,需要研究各个系统的数据结构,提出进行系统间信息交 换的方式和方法,建立信息交换平台。如提出造船信息XML文件交换格式,建立通用的WEB SERVICE数据存取方法等。实现船舶设计、建造、管理等异构系统间的信息交换和产品生命周期的信息共享,提供信息交换和系统开发的基础平台。
    总之,通过推行企业资源计划的理念和方法,实现管理的“精细化”,深化生产设计、强化生产计划、优化资源配置、固化业务流程;通过信息的“集成化”建立有 效的信息操控体系,消除信息孤岛,实现各专业各阶段的工作协同,从而提高生产效率、缩短设计建造周期、降低生产成本、掌控产品质量,全面增强造船企业的国 际竞争能力。 
   
    苏文荣(沪东中华造船教授级高工)
    中国船舶工业是我国制造业应用计算机最早的行业之一,自一九六五年开始了船舶设计计算和船舶制造CAM的研究和应用,四十年来,船舶的计算机应用有了很大 的发展,计算机的应用已成为船舶设计、制造、管理重要手段,促进我国造船工业的发展。但四十年来,由于造船行业的行业特点和其他种种原因,造船信息化在整 体上落后于其他某些制造行业的应用。
    造船企业是项目型制造企业。船舶产品在很大程度上是按照船东的特定要求来设计的,这些产品绝大部分只生产一艘或几艘,以后不再重复生产。但船舶产品的设计 和制造过程是非常复杂的,不同产品的设计、制造过程不完全相同,给企业的设计、生产、管理带来了不少困难。船舶产品的结构很复杂,涉及各行各业,配套企业 达上千家之多,零、部件达数百万件以上,生产组织机构庞大,协调困难,很难达到计划的精确管理。因此船舶企业既是实施信息化能带来更大效益的企业,又是实 施信息化很困难的企业。目前市场上一般的CAD/CAM软件和管理软件很难适应船舶制造企业的需要,包括国外先进造船企业如日、韩、欧、美其信息化建设均 是商品化软件和自行开发软件一起集成构成的信息化应用体系。我国造船企业也正在探索一条符合中国国情的信息化之路。
    上世纪九十年代初,中国船舶工业为打入国际市场,增强企业竞争能力,克服设计瓶颈,引进了国外三维船舶设计软件,这些软件在提高设计效率和质量上有较好作 用,但由于软件商出于商业利益和技术保密,设计软件无法和我船舶企业自行开发管理软件或引进管理软件集成,至今船舶企业还没有一个完整的PDM,使船舶企 业的设计、生产、管理无法集成。有些船舶企业曾全盘引进国外集成管理软件和系统,由于不适合我国造船国情和外部配套环境均以失败告终。目前有一家企业正在 实施国外引进的集成系统,但由于造船模式和国情的不一致,推进中困难不少,更为重要的是,系统建立后正常的运行和维护,没有一支熟悉该系统应用的IT队伍 是很难维持正常运行的,没有一支掌握该系统二次开发技术的队伍,系统很难满足今后企业发展的需要。
    造船行业计算机开发应用历史早,应用的基础工作相对有优势,但由于早期开发的应用软件,其开发思想和技术相对落后,不能很好适应现代集成制造理念,如一些 应用软件大部分是孤岛形式很难集成;在企业编码方面,一般造船企业在企业一级的编码基本统一,而部门一级各自为政自成体系。要实现设计、生产、管理一体 化,这些编码必须通过修订或重新编制到企业各部门的统一。这些问题使一些企业领导难以决策,弃之可惜,重新整合集成工作量大、投资大,很难快速见效。从而 影响企业的信息化建设进程。
    中央明确提出发展造船工业,争取在2015年成为第一造船大国。从中央到地方,把发展造船业作为一个新的经济增长点在抓,建新厂、扩老厂,硬件建设上马较 快,但在建立现代造船制造理念和信息化等软件建设上重视不够。有些企业领导也能注意到信息化建设的重要性,舍得花钱投入,但对信息化建设的运行环境、企业 管理流程、企业信息化相关人员培训的一些基础工作重视不够,造成信息化建设实施困难重重或效果不明显,从而影响实施企业信息化的决心和积极性。
    信息化建设是一个系统工程,也是一个需要较大投资的建设项目,而造船业是一个技术、资金、劳动力密集型企业,投入大、利润低,大部分企业缺乏信息化建设资 金,只能有资金时搞一、二个项目,没钱就少搞不搞,缺乏一个总体规划,造成信息化建设见效不快。另一方面由于信息技术发展快和企业自身的发展,一些老系统 还没用好就已不适应企业需要。
    纵观造船工业信息化发展道路,在我国造船业迅速发展的形势下,要使我国成为第一造船大国、造船强国,以信息化促进造船工业的现代化是发展我国造船业的重要措施。这已成为造船业各级领导的共识。造船业信息化建设要注意一些问题。
    1、 信息化建设必须要以现代造船理念来指导总体规划。实施中可根据企业情况分步实施,才能见实效。
    2、信息化建设是“一把手”工程,领导不仅在投资上要支持,还要和企业现代造船模式转换结合起来,特别是涉及企业利益重新分配等重大问题,“一把手”必须亲自抓。要象抓生产一样抓信息化建设,才能保证信息化顺利实施。
    3、造船业涉及专业广、生产组织部门多、流程复杂,要确保系统实施必须要做好大量的标准、代码等工作。在系统运行中又要重视系统运行中的数据采集反馈,才 能保证系统正确高效运行。由于造船行业基层外来人员较多,这给数据采集造成一定的困难,但此项工作必须认真抓,甚至可组织专门机构专人抓基础工作和数据采 集,否则建立了系统也很难有效运行,更不要说产生效益。
    4、必须以我为主抓好信息系统建设和实施。据报道和本人所见,一些企业信息化失败的重要原因之一,是没有做到以我为主。软件公司是以商业利益驱动的公司, 它不可能把全部技术和经验传授给企业,在一些关健技术上是保密的,系统是不开放的,很难二次开发。其次,由于国外和中国国情不同,生产流程不同,企业不可 能全盘照搬引进系统,在实施中必须要本地化,以适应企业实际运作情况,但其代价是十分昂贵的,或者,本地化工作不能及时得到响应,就要影响信息化实施。再 则,目前一般企业实施的系统不是功能完整的信息系统,随着企业不断发展,系统功能必定要扩大,长期依靠软件公司有一定难度,再者,有些软件公司自身的命运 还很难预测。最后,引进一个系统必须要有一个维护日常运行的技术队伍,长期依靠外部技术力量是不可行的。基于上述原因,希望企业一定要组织培养一批具有专 业知识的IT开发队伍,才能通过对引进系统的消化吸收,不断二次开发改进,最后形成具有企业特色的信息系统。确保企业信息系统实施和不断发展。 
   
    盛晓晔(上海爱德华船厂档案机要科科长)
    在信息化建设方面,我认为,信息化建设的主力军信息部门,首先是一个服务于各个业务部门的服务性部门:作为信息部门,它必须协助各个业务部门和行政部门, 方便、快捷地通过IT手段来实现他们的业务目标,在工作目的上遵从各个业务部门的需要。其次,它是一个在工作途径上与各个业务部门平等的部门:一个建设成 功的基础设施必须有业务部门的投入。在业务部门确定其具体策略的同时,信息部门也投入参与到这个过程之中。因此,公司的每一项战略决策实际上需要各业务部 门,包括信息部门共同参与,协同完成。信息部门定期得到公司各个部门最近的发展情况,以便在某一业务部门做出决策时,信息部门可以考虑借助IT手段协助该 部门更好的完成任务。因此,如果不是有更高一级的领导来统领整个工作,势必会给信息部门的工作开展,带来一定的不便。我们公司由总经理直接领导信息化工作 指导小组,足见公司对信息化建设的重视。 
   
    于涛(大连新船重工信息管理科科长)
    船舶行业信息化建设的难点包括:
    1、产品设计信息无法与建造共享 造船产业是项目型制造产业,基本上是“0”批量,设计是每一个产品生产的第一道工序,传统的设计方法导致信息不能与生产管理之间进行有效沟通,设计与建造无法紧密结合,设计信息无法直接为建造服务,因此导致设计与建造脱节,从而使造船周期加长,相应造船成本较高。 
    2、各类资源无法共享、优化 造船产业是多工种混合型立体作业,而且受气候、配套等客观条件的影响较大。这样,经常会受到各种因素的干扰,导致计划需要变更,这时,是否能充分掌握各类 资源的信息十分重要。如果各类资源无法共享,公司的经营、采购、生产、质量、成本等项管理就难以作出较为科学的优化决策,以致企业的各项生产经营活动达不 到各生产要素精确配置的目的。
    3、管理基础信息获得不及时、不准确 作为制造业管理的基础数据主要有二个:一为工作量信息,二为物量信息。对于批量产品,这二个信息的取得并不困难,而单项型产品必须要在设计(包括CAD/CAM/CAPP)工作完成后才能取得,因此,在生产准备阶段,管理基础数据只能依靠经验估计。
    4、信息集成度差,难以优化 数字化造船就是实现设计、建造、管理一体化。这就需要船舶产品制造全过程所有信息,包括设计、制造、计划、采购和财务成本管理都以统一的数字化标准表达, 达到船舶产品全生产周期的一切活动均可以共享数据。这就要求设计、制造、管理信息高度的集成,只有这样才能产生较高的生产效率和质量。但由于信息集成度 差,在实际造船生产中真正达到设计、建造、管理一体化还不多。影响了生产效率和质量的提高。
    5、对ERP项目的难度和复杂度认识不足 ERP项目是一个企业管理系统工程,而不是一般意义上的企业管理信息系统工程或者是企业信息化建设工程。这不仅仅是因为整个管理系统基于ERP、SCM、 BPR、系统工程和信息技术等现代科学技术的思想和方法,而是从本质上深刻地揭示了现代企业管理与传统企业管理、先进与落后,以及企业应用ERP与开展企 业管理创新、推进企业管理现代化和提高企业竞争力之间的必然关系。大量的研究与实践已经充分表明,ERP在我国应用的成败并不取决于技术、资金、网络、应 用软件和软件实施,而主要取决于企业自身主体意识。企业是应用ERP的主体。企业应用ERP首先要提高思想认识,转变思想观念,增强自身主体意识。只有增 强了主体意识,才能提高主体能力,才能发挥主体作用,才能确保ERP项目的成功。因此,需要全公司全体成员对此要有一个清醒的认识,在实施的过程中要自觉 地配合这项工作,而且要坚持不懈地搞下去,不能半途而废。

VMware ESX Server 高级使用向导

如题,前几天从www.vmware.cn(中国VMware)上下载,感觉讲得很好,所以也转载一下。

简介: (by Ron; Herold, Scott Oglesby)曾被称为ESX圣经. Ron和Scott均有多年的IT项目咨询实施经验. 该书对ESX在体系结构和资源管理调度机制有比较深入的介绍和分析.

点击下载此文件