Notifies the FME Server with the
generated JSON. Remember to set your
server URL and password here.
send_test_email.fmw
2015, Safe Software
Updated for 2018.1
Sends a simple test email from FME Server
using the FMEServerNotifier.
1. Create Topic and Email Subscriber
In the FME Server Web Interface, create a topic for notifications to be sent to and also create a email subscriber that subscribes to this topic.
2. Create a Workspace
Once you file out the the email fields in the transformer you can send the email message in two different ways:
A. Send an email when the workspace completes
B. Send an email using a transformer
1.0编码= US_ASCII.standalone= 不? geometry 尺寸= 2空值 geometry (美元)FACTORY_DEF Creator_CLASSIC) CreationFactory FACTORY_NAME Creator_CLASSIC_Creator $(Creator_2D3D) $(Creator_COORDS) CREATE_AT_END no OUTPUT FEATURE_TYPE _____CREATED______ FACTORY_DEF * TeeFactory FACTORY_NAME Creator_Cloner INPUT FEATURE_TYPE _____CREATED______ @Tcl2(Creator_CoordSysRemover) @CoordSys() NUMBER_OF_COPIES 1 COPY_NUMBER_ATTRIBUTE "_creation_instance" OUTPUT FEATURE_TYPE Creator_CREATED fme_feature_type Creator FACTORY_DEF * BranchingFactory FACTORY_NAME "Creator_CREATED Brancher -1 3" INPUT FEATURE_TYPE Creator_CREATED TARGET_FACTORY "$(WB_CURRENT_CONTEXT)_CREATOR_BRANCH_TARGET" MAXIMUM_COUNT None OUTPUT PASSED FEATURE_TYPE * # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME "$(WB_CURRENT_CONTEXT)_CREATOR_BRANCH_TARGET" INPUT FEATURE_TYPE * OUTPUT FEATURE_TYPE * # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME "FMEServerEmailGenerator INPUT Input Collector" INPUT FEATURE_TYPE Creator_CREATED OUTPUT FEATURE_TYPE FMEServerEmailGenerator_INPUT MACRO FMEServerEmailGenerator_WORKSPACE_NAME FMEServerEmailGenerator MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_XFORMER_NAME FMEServerEmailGenerator MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_TRANSFORMER_GROUP MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)___COMPOUND_PARAMETERS MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_SUB_DOC_NAME FMEServerEmailGenerator MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_email_to foo bar.com MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_email_cc MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_email_from foo@baz.com MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_email_replyto MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_email_subject Test Email MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_email_subscriber_content Hi 这 是 你的 FME Server MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_email_attachment_paths DEFAULT_MACRO FMEServerEmailGenerator_WORKSPACE_NAME "" INCLUDE [puts {MACRO WB_OLD_CONTEXT_$(FMEServerEmailGenerator_WORKSPACE_NAME) $(WB_CURRENT_CONTEXT)}; puts {MACRO WB_CURRENT_CONTEXT $(FMEServerEmailGenerator_WORKSPACE_NAME)}] FACTORY_DEF * TeeFactory FACTORY_NAME "$(FMEServerEmailGenerator_WORKSPACE_NAME)_INPUT1544035597 Input Splitter" INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_INPUT" OUTPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_INPUT" # ------------------------------------------------------------------------- # Create the DomainName that this transformer will use. # Because @Count itself will evalute the expression to calculate the # domain, we don't need to do anything in Tcl per feature going by INCLUDE [ set domainPrefix {}; if { {Local} == {Local} } { set domainPrefix [FME_EncodeText {$(FMEServerEmailGenerator_WORKSPACE_NAME)_Counter_}]; }; puts "MACRO $(FMEServerEmailGenerator_WORKSPACE_NAME)_Counter_FULL_DOMAIN ${domainPrefix}counter"; ] FACTORY_DEF * ExecuteFunctionFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_Counter_Rejector COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_INPUT" FUNCTION_DEFINITION @Count(REJECTABLE_WITH_FLAG,fme_encoded,$($(FMEServerEmailGenerator_WORKSPACE_NAME)_Counter_FULL_DOMAIN),"0") RESULT_ATTRIBUTE "_email_feature_id" OUTPUT COMPLETE FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Counter_OUTPUT" OUTPUT REJECTED FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Counter_ " FACTORY_DEF * TeeFactory FACTORY_NAME "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Counter Transformer Output Nuker" INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Counter_ " # ------------------------------------------------------------------------- Tcl2 proc $(FMEServerEmailGenerator_WORKSPACE_NAME)_ParameterFetcher_doFetch {} { foreach {name val} {"_email_from {$($(FMEServerEmailGenerator_WORKSPACE_NAME)_email_from$encode)} _email_replyto {$($(FMEServerEmailGenerator_WORKSPACE_NAME)_email_replyto)} _email_attachment_paths {$($(FMEServerEmailGenerator_WORKSPACE_NAME)_email_attachment_paths)} _email_cc {$($(FMEServerEmailGenerator_WORKSPACE_NAME)_email_cc)}"} { if { [string match {* *} $ val) = = 1}{设置val [FME_Execute EvaluateExpression {STRING} $val {$(FMEServerEmailGenerator_WORKSPACE_NAME)_ParameterFetcher}]; } elseif {[string match {*FME_CONDITIONAL*} $val] == 1} { set val [FME_Execute EvaluateExpression {STRING} $val {$(FMEServerEmailGenerator_WORKSPACE_NAME)_ParameterFetcher}]; } else { set val [FME_DecodeTextOrAttr $val]; }; FME_SetAttribute [FME_DecodeText $name] $val } } FACTORY_DEF * TeeFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_ParameterFetcher INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Counter_OUTPUT" OUTPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_ParameterFetcher_OUTPUT" @Tcl2($(FMEServerEmailGenerator_WORKSPACE_NAME)_ParameterFetcher_doFetch) # ------------------------------------------------------------------------- FACTORY_DEF * AttrSetFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeCreator NULL_ATTR_MODE EMPTY MULTI_FEATURE_MODE YES NUM_PRIOR_FEATURES 0 NUM_SUBSEQUENT_FEATURES 0 NULL_ATTR_VALUE_PROMPT "Attribute Replacement Value:" NULL_ATTR_VALUE "" INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_ParameterFetcher_OUTPUT" ATTR _email_to $($(FMEServerEmailGenerator_WORKSPACE_NAME)_email_to) ATTR _email_subject $($(FMEServerEmailGenerator_WORKSPACE_NAME)_email_subject) ATTR _email_subscriber_content $($(FMEServerEmailGenerator_WORKSPACE_NAME)_email_subscriber_content) OUTPUT OUTPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeCreator_OUTPUT" # ------------------------------------------------------------------------- FACTORY_DEF * XMLTemplaterFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_JSONTemplater INPUT CONTROL_FEATURE FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeCreator_OUTPUT" INPUT DATA_FEATURE FEATURE_TYPE $(FMEServerEmailGenerator_WORKSPACE_NAME)_JSONTemplater_DataFeatures RESULT_ATTR text_line_data OUTPUT_XML_HEADER NO CONSECUTIVE_GROUPS NO BUCKET_ATTR_NAME __xml_templater_bucket__ CONTROL_TEMPLATE_EXPR 发邮件给:fme:get-attribute _发邮件给 Email_cc.:fme:get-attribute _mail_cc. email_from:fme:get-attribute _email_from 电子邮件_replyto.:fme:get-attribute _email_replyto 电子邮件主题:fme:get-attribute _电子邮件主题 subscriber_content:fme:get-attribute _email_subscriber_content输出xml_document feature_type“$(fmeserveremailgenerator_workspace_name)_jsontemplatter_output”#------------------------------------------------------------- Factory_def * testfactory factory_name $(fmeserveremailgenerator_workspace_name)_tester输入feature_type“$(fmeserveremailgenerator_workspace_name)_jsontemplater_output“test _email_attachment_paths attribute_is_empty ENCODED BOOLEAN_OPERATOR OR OUTPUT PASSED FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Tester_PASSED" OUTPUT FAILED FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Tester_FAILED" # ------------------------------------------------------------------------- Tcl2 set $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_1430ab9e_c567_444e_bc3a_66fd445b47a31_splitDelim [FME_DecodeText { }]; if { [regexp {^([1-9][0-9]*s)+$} [set $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_1430ab9e_c567_444e_bc3a_66fd445b47a31_splitDelim]] } { set $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_1430ab9e_c567_444e_bc3a_66fd445b47a31_splitWidths [split [regsub -all {s$} { } {}] s];proc $ (FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_doSplit {} { global $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_1430ab9e_c567_444e_bc3a_66fd445b47a31_splitWidths; set source [FME_GetAttribute {"_email_attachment_paths"}]; set attrNum 0; set listName {_email_attachment_path_list}; set attrPos 0; foreach width [set $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_1430ab9e_c567_444e_bc3a_66fd445b47a31_splitWidths] { set endPos [expr $attrPos + $width - 1]; set bit [string range $source $attrPos $endPos]; FME_SetAttribute "$listName{$attrNum}" [string trim $bit]; incr attrPos $width; incr attrNum; }; }; } else { proc $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_doSplit {} { global $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_1430ab9e_c567_444e_bc3a_66fd445b47a31_splitDelim; set delim [set $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_1430ab9e_c567_444e_bc3a_66fd445b47a31_splitDelim]; set delimLength [string length $delim]; set source [FME_GetAttribute {"_email_attachment_paths"}]; set keepEmptyParts [string equal {No} {No}]; set bits {}; set startIndex 0; set nextIndex [string first $delim $source $startIndex]; while {$nextIndex >= 0} { set part [string range $source $startIndex [expr $nextIndex-1]]; if { $keepEmptyParts || $part != \"\" } { lappend bits $part; }; set startIndex [expr $nextIndex + $delimLength]; set nextIndex [string first $delim $source $startIndex]; }; set lastPart [string range $source $startIndex end]; if { $keepEmptyParts || $lastPart != \"\" } { lappend bits $lastPart }; set listName {_email_attachment_path_list}; set attrNum 0; foreach bit $bits { FME_SetAttribute "$listName{$attrNum}" [string trim $bit]; incr attrNum; } } } FACTORY_DEF * TeeFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Tester_FAILED" OUTPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_OUTPUT" @Tcl2($(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_doSplit) # ------------------------------------------------------------------------- FACTORY_DEF * ElementFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_ListExploder INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_AttributeSplitter_OUTPUT" LIST_NAME "_email_attachment_path_list{}" ELEMENT_NUMBER_FIELD "_element_index" CLONE_GEOMETRY MODE LEAN OUTPUT ELEMENT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_ListExploder_LIST_FOUND" @RemoveAttributes(ElementFactory.baseCloned) # ------------------------------------------------------------------------- Tcl2 proc $(FMEServerEmailGenerator_WORKSPACE_NAME)_StringConcatenator_1ca700d1_cc79_4179_8cb3_a508e6cd832e1_doSetAttr {attrText} { FME_SetAttribute [FME_DecodeText {_email_attachment_json}] [FME_DecodeText $attrText] } FACTORY_DEF * TeeFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_StringConcatenator INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_ListExploder_LIST_FOUND" OUTPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_StringConcatenator_OUTPUT" @Tcl2("$(FMEServerEmailGenerator_WORKSPACE_NAME)_StringConcatenator_1ca700d1_cc79_4179_8cb3_a508e6cd832e1_doSetAttr {@EvaluateExpression(STRING_ENCODED, 电子邮件附件价值 _element_index :价值 _email_attachment_path_list ,$(fmeserveremailgenerator_workspace_name)_stringconcatenator)}“)#---------------------------------------------------------------------------- yemend_macro $(fmeserveremailgenerator_workspace_name)_aggregator_break_attr包括[if {“否”==“是“} {看跌{宏$(FMEServerEmailGenerator_WORKSPACE_NAME)_Aggregator_BREAK_ATTR BREAK_BEFORE_FIELD_CHANGE _email_feature_id}}] FACTORY_DEF {*} AggregateFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_Aggregator INPUT FEATURE_TYPE ”$(FMEServerEmailGenerator_WORKSPACE_NAME)_StringConcatenator_OUTPUT“ MODE ONE_LEVEL GROUP_BY {_email_feature_id} $($(FMEServerEmailGenerator_WORKSPACE_NAME)_Aggregator_BREAK_ATTR)Acculate_Attributes是concatenate_fields {_mail_attachment_json}分隔符生成_multis是输出聚合feature_type“$(fmeserveremailgenerator_workspace_name)_aggregator_aggregate”@geometry(set_to_contain_individual_geoms,no)#--------------------------------------------------------------------------------宏CASEMAC包括[如果{{否} == {no}} {puts {宏casemac -nocase}} tcl2 proc $(fmeserveremailgenerator_workspace_name)_stringreplacer_2_a50345d7_b3ab_4f78_8800_0855a7800ffc1_replacer {findtext replayeText Invalidvalue} {set attrs [split \“_ email_attachment_json \”{,}];set sendvalue [fme_decodeText $ findtext];set replacevalue [fme_decodeText $ replaceText];foreachtrat $ attrs {set attrval [fme_getattribute $ attr];设置nom暂停真的;如果{{否} == {是}} {set newattrval [regsub $(casemac) - $ - $ findvalue $ atterval $ replacevalue];} else {set newattrval [string映射$(casemac)[list $ $ findvalue $ replacevalue] $ atterval];};如果{$ newattrval ne $ atterval} {set nomatch false; FME_SetAttribute $attr $newAttrVal; }; if {$noMatch} { if { $invalidValue == {FME_NULL_VALUE} } { FME_SetAttributeNull $attr; } elseif { $invalidValue != {_FME_NO_OP_} } { FME_SetAttribute $attr [FME_DecodeText $invalidValue]; }; }; }; } FACTORY_DEF * TeeFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_StringReplacer_2 INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Aggregator_AGGREGATE" OUTPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_StringReplacer_2_OUTPUT" @Tcl2("$(FMEServerEmailGenerator_WORKSPACE_NAME)_StringReplacer_2_a50345d7_b3ab_4f78_88e0_0855a7800ffc1_replacer { } { } {_FME_NO_OP_}") # ------------------------------------------------------------------------- MACRO casemac INCLUDE [ if { {NO} == {NO} } { puts {MACRO casemac -nocase}} ] Tcl2 proc $(FMEServerEmailGenerator_WORKSPACE_NAME)_StringReplacer_67dc20ed_43c5_478c_832c_83f09c2c58c61_replacer { findText replaceText invalidValue} { set attrs [split \"text_line_data\" {,}]; set findValue [FME_DecodeText $findText]; set replaceValue [FME_DecodeText $replaceText]; foreach attr $attrs { set attrVal [FME_GetAttribute $attr]; set noMatch true; if {{NO} == {YES}} { set newAttrVal [regsub $(casemac) -all -- $findValue $attrVal $replaceValue]; } else { set newAttrVal [string map $(casemac) [list $findValue $replaceValue] $attrVal]; }; if { $newAttrVal ne $attrVal } { set noMatch false; FME_SetAttribute $attr $newAttrVal; }; if {$noMatch} { if { $invalidValue == {FME_NULL_VALUE} } { FME_SetAttributeNull $attr; } elseif { $invalidValue != {_FME_NO_OP_} } { FME_SetAttribute $attr [FME_DecodeText $invalidValue]; }; }; }; } FACTORY_DEF * TeeFactory FACTORY_NAME $(FMEServerEmailGenerator_WORKSPACE_NAME)_StringReplacer INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_StringReplacer_2_OUTPUT" OUTPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_StringReplacer_OUTPUT" @Tcl2("$(FMEServerEmailGenerator_WORKSPACE_NAME)_StringReplacer_67dc20ed_43c5_478c_832c_83f09c2c58c61_replacer { } {@EvaluateExpression(STRING_ENCODED, 价值 _mail_attachment_json. , (FMEServerEmailGenerator_WORKSPACE_NAME) _StringR美元eplacer)} {_FME_NO_OP_}") FACTORY_DEF * TeeFactory FACTORY_NAME "$(FMEServerEmailGenerator_WORKSPACE_NAME)_OUTPUT1544035597 Output Collector" INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_StringReplacer_OUTPUT" INPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_Tester_PASSED" OUTPUT FEATURE_TYPE "$(FMEServerEmailGenerator_WORKSPACE_NAME)_OUTPUT" INCLUDE [puts {MACRO WB_CURRENT_CONTEXT $(WB_OLD_CONTEXT_$(FMEServerEmailGenerator_WORKSPACE_NAME))}] FACTORY_DEF * TeeFactory FACTORY_NAME "FMEServerEmailGenerator OUTPUT Output Renamer/Nuker" INPUT FEATURE_TYPE FMEServerEmailGenerator_OUTPUT OUTPUT FEATURE_TYPE FMEServerEmailGenerator_OUTPUT # ------------------------------------------------------------------------- FACTORY_DEF * ServerFactory FACTORY_NAME FMEServerNotifier_2 INPUT FEATURE_TYPE FMEServerEmailGenerator_OUTPUT ACTION PUBLISH_TO_TOPIC HOST "bp-fmeserver15" USERNAME "admin" PASSWORD "fme_decrypt(MDowfCN8I3xcG3GQ/TeRRUJUZ5LDPtdvpscbh7Nj9gG/INBkAGA+fkaDrNbhZtfa3rmkUUrCxKWaAFwiYsKgWJNl/0mRpxUuP+IT2c+Qhh26JEZtUWAmpuoaQCdQ3ykKWm2zaoAM5MBCGaGEuYe+6AS07/nLNRJwqp1jdwP1FgVCbXRvZtWfKjEZlNJYQ+EicVc6cv2DxCYJyTljvXwF8mKxenML6FKJiHARQCO8OMJidKKZQJP1SeYIhqB0YrtGw4cGV2ZquQKifvRjB2Tl6wBAWDmeCg+R1jvft1tR17SISyTDv77K+mV80w2aaUSgybbF7coM0BrQPcpehfjlW+YxV73+9mPMFXKQeznZ22T8MJor57O44p8U2NQCw35HiFBs0oVP9VkkY0D/WzGRevseyX1pIEWJSQSFwkJVhiyXavMDz5E5SEYgTZHfVeGBXCDuIEEbfRRkPU5yD2nw2ZAVimDRD7UQhEEY6PosGqU17He4y35WEfAggQ40+EKuupOQSZRsKotTTqlYGHJtX49ymuKqfyZzOAUSUzDMcj8gfDgzOCcuhw2sK3fJaMszdHl2+FTIYwYcDZLOXh1Lp9tCqYg73bcOpl9kZt53WLDyxaQ6tgVwXtXbJeoUkrSjtmAxoJbIZILy4hYc5T9Uot+HIj1elugKHEPFu0Cryk8JF7Fb305F6mXYLu7AkdufV4dyyD/0GgEKBpY0eramM7+fA1/d7DBGe6kpgJ0YadhxrkdMoQOX1gOTjuZqEzTngVXguM0kALt106olrKQGoJYokLDi0k4JmQgOUrS8Lf1m6DoP56TbEZVfSwNCoViVsTypNXiy3SICXQSsy9rxXsgCWLB4ePWHRRyrMzoL/M54zSQmLM83sJZQHKUSj5NXR6lvuU7/WgjPsy9+vhtlHn65NkmQpTIe)" TOPIC "@EvaluateExpression(FDIV,STRING_ENCODED, 价值 _creation_instance. ,FMEServerNotifier_2)" BODY "@EvaluateExpression(FDIV,STRING_ENCODED, 价值 text_line_data. ,FMEServerNotifier_2)" OUTPUT OUTPUT FEATURE_TYPE FMEServerNotifier_2_OUTPUT OUTPUT REJECTED FEATURE_TYPE FMEServerNotifier_2_ factory_def * teefactory factory_name“fmeservernotifier_2输出变压器输出nuker”输入feature_type fmeservernotifier_2_output factory_def * teefactory factory_name“fmeservernotifier_2 Transformer Output Nuker" INPUT FEATURE_TYPE FMEServerNotifier_2_ # ------------------------------------------------------------------------- FACTORY_DEF * RoutingFactory FACTORY_NAME "Destination Feature Type Routing Correlator" COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE * FEATURE_TYPE_ATTRIBUTE __wb_out_feat_type__ OUTPUT ROUTED FEATURE_TYPE * OUTPUT NOT_ROUTED FEATURE_TYPE __nuke_me__ @Tcl2("FME_StatMessage 818059 [FME_GetAttribute fme_template_feature_type] 818060 818061 fme_warn") # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME "Final Output Nuker" INPUT FEATURE_TYPE __nuke_me__