svn commit: r550347 - in /ofbiz/trunk/specialpurpose/oagis: ./ config/ script/org/ofbiz/oagis/ servicedef/ src/org/ofbiz/oagis/ webapp/oagis/WEB-INF/actions/ webapp/oagis/WEB-INF/actions/message/ webapp/oagis/message/ widget/

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r550347 - in /ofbiz/trunk/specialpurpose/oagis: ./ config/ script/org/ofbiz/oagis/ servicedef/ src/org/ofbiz/oagis/ webapp/oagis/WEB-INF/actions/ webapp/oagis/WEB-INF/actions/message/ webapp/oagis/message/ widget/

apatel-2
Author: apatel
Date: Sun Jun 24 22:04:47 2007
New Revision: 550347

URL: http://svn.apache.org/viewvc?view=rev&rev=550347
Log:
First cut of ProcessShipment message.

Added:
    ofbiz/trunk/specialpurpose/oagis/config/oagis.properties
    ofbiz/trunk/specialpurpose/oagis/servicedef/secas.xml
    ofbiz/trunk/specialpurpose/oagis/webapp/oagis/WEB-INF/actions/
    ofbiz/trunk/specialpurpose/oagis/webapp/oagis/WEB-INF/actions/message/
    ofbiz/trunk/specialpurpose/oagis/webapp/oagis/WEB-INF/actions/message/ProcessShipment.bsh
    ofbiz/trunk/specialpurpose/oagis/webapp/oagis/message/
    ofbiz/trunk/specialpurpose/oagis/webapp/oagis/message/ProcessShipment.ftl
Modified:
    ofbiz/trunk/specialpurpose/oagis/build.xml
    ofbiz/trunk/specialpurpose/oagis/ofbiz-component.xml
    ofbiz/trunk/specialpurpose/oagis/script/org/ofbiz/oagis/OagisMessageServices.xml
    ofbiz/trunk/specialpurpose/oagis/servicedef/services.xml
    ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java
    ofbiz/trunk/specialpurpose/oagis/widget/MessageInfoScreens.xml

Modified: ofbiz/trunk/specialpurpose/oagis/build.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/build.xml?view=diff&rev=550347&r1=550346&r2=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/build.xml (original)
+++ ofbiz/trunk/specialpurpose/oagis/build.xml Sun Jun 24 22:04:47 2007
@@ -49,6 +49,7 @@
             <fileset dir="../../framework/guiapp/lib" includes="*.jar"/>
             <fileset dir="../../framework/guiapp/build/lib" includes="*.jar"/>
             <fileset dir="../../framework/webapp/build/lib" includes="*.jar"/>
+            <fileset dir="../../framework/widget/build/lib" includes="*.jar"/>
             <fileset dir="../../applications/party/build/lib" includes="*.jar"/>
             <fileset dir="../../applications/product/build/lib" includes="*.jar"/>
         </path>

Added: ofbiz/trunk/specialpurpose/oagis/config/oagis.properties
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/config/oagis.properties?view=auto&rev=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/config/oagis.properties (added)
+++ ofbiz/trunk/specialpurpose/oagis/config/oagis.properties Sun Jun 24 22:04:47 2007
@@ -0,0 +1,24 @@
+###############################################################################
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+###############################################################################
+
+# -- logical location of server (10 char max)
+CNTROLAREA.SENDER.LOGICALID=1234567890
+
+# -- auth id is required to access machine that generated the BOD (50 char max)
+CNTROLAREA.SENDER.AUTHID=Ofbiz

Modified: ofbiz/trunk/specialpurpose/oagis/ofbiz-component.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/ofbiz-component.xml?view=diff&rev=550347&r1=550346&r2=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/ofbiz-component.xml (original)
+++ ofbiz/trunk/specialpurpose/oagis/ofbiz-component.xml Sun Jun 24 22:04:47 2007
@@ -30,8 +30,10 @@
     <entity-resource type="group" reader-name="main" loader="main" location="entitydef/entitygroup.xml"/>
     <entity-resource type="data" reader-name="seed" loader="main" location="data/OagisTypeData.xml"/>
     
-    <service-resource type="model" loader="main" location="servicedef/services.xml"/>        
-    
+    <service-resource type="model" loader="main" location="servicedef/services.xml"/>
+    <!-- Uncomment To activate automatic messaging to the partner  
+    <service-resource type="eca" loader="main" location="servicedef/secas.xml"/>      
+     -->
     <webapp name="oagis"
         title="Oagis"
         server="default-server"

Modified: ofbiz/trunk/specialpurpose/oagis/script/org/ofbiz/oagis/OagisMessageServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/script/org/ofbiz/oagis/OagisMessageServices.xml?view=diff&rev=550347&r1=550346&r2=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/script/org/ofbiz/oagis/OagisMessageServices.xml (original)
+++ ofbiz/trunk/specialpurpose/oagis/script/org/ofbiz/oagis/OagisMessageServices.xml Sun Jun 24 22:04:47 2007
@@ -53,5 +53,17 @@
         <set-nonpk-fields value-name="lookedUpValue" map-name="parameters"/>
         <store-value value-name="lookedUpValue"/>
     </simple-method>
+
+    <simple-method method-name="sendProcessShipmentMsg"
+        short-description="Send Process Shipment Message">
+        <set field="serviceContext.bodyParameters.shipmentId" from-field="parameters.shipmentId"/>
+        <set field="serviceContext.bodyParameters.logicalId" from-field="parameters.logicalId"/>
+        <set field="serviceContext.bodyParameters.authId" from-field="parameters.authId"/>
+        <set field="serviceContext.bodyParameters.referenceId" from-field="parameters.referenceId"/>
+        <set field="serviceContext.bodyParameters.sentDate" from-field="parameters.sentDate" type="Timestamp"/>
+        <set field="serviceContext.bodyScreenUri" value="component://oagis/widget/MessageInfoScreens.xml#ProcessShipment"/>
+        <call-service service-name="exportMsgFromScreen" in-map-name="serviceContext"/>
+        <!-- Todo: Get partner server url to post the message  -->
+    </simple-method>    
     
 </simple-methods>

Added: ofbiz/trunk/specialpurpose/oagis/servicedef/secas.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/servicedef/secas.xml?view=auto&rev=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/servicedef/secas.xml (added)
+++ ofbiz/trunk/specialpurpose/oagis/servicedef/secas.xml Sun Jun 24 22:04:47 2007
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<service-eca xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/service-eca.xsd">
+    <!-- order status changes -->
+    
+    <eca service="changeOrderStatus" event="commit" run-on-error="false">
+        <condition field-name="statusId" operator="equals" value="ORDER_APPROVED"/>
+        <condition field-name="orderTypeId" operator="equals" value="SALES_ORDER"/>
+        <condition-field field-name="statusId" operator="not-equals" to-field-name="oldStatusId"/>
+        <action service="processShipment" mode="sync"/>
+    </eca>
+    
+</service-eca>

Modified: ofbiz/trunk/specialpurpose/oagis/servicedef/services.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/servicedef/services.xml?view=diff&rev=550347&r1=550346&r2=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/servicedef/services.xml (original)
+++ ofbiz/trunk/specialpurpose/oagis/servicedef/services.xml Sun Jun 24 22:04:47 2007
@@ -64,6 +64,26 @@
         <description>Process incoming Inventory Sync message</description>
         <implements service="serviceStreamInterface"/>
     </service>
-
+    <service name="exportMsgFromScreen" max-retry="0" engine="java"
+        location="org.ofbiz.oagis.OagisShipmentServices" invoke="exportMsgFromScreen">
+        <description>Export Message From Screen</description>
+        <attribute name="bodyScreenUri" type="String" mode="IN" optional="true"/>
+        <attribute name="bodyParameters" type="Map" mode="IN" optional="true"/>
+        <attribute name="body" type="String" mode="OUT" optional="true"/>
+    </service>
+    <service name="processShipment" max-retry="0" engine="java"
+        location="org.ofbiz.oagis.OagisShipmentServices" invoke="processShipment">
+        <description>Process Shipment</description>
+        <attribute name="orderId" mode="IN" type="String" optional="false"/>
+    </service>
+    <service name="sendProcessShipmentMsg" max-retry="0" engine="simple"
+        location="org/ofbiz/oagis/OagisMessageServices.xml" invoke="sendProcessShipmentMsg">
+        <description>Send Process Shipment Message</description>
+        <attribute name="shipmentId" mode="IN" type="String" optional="false"/>
+        <attribute name="logicalId" mode="IN" type="String" optional="false"/>
+        <attribute name="authId" mode="IN" type="String" optional="false"/>
+        <attribute name="referenceId" mode="IN" type="String" optional="false"/>
+        <attribute name="sentDate" mode="IN" type="Timestamp" optional="false"/>
+    </service>
 
 </services>

Modified: ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java?view=diff&rev=550347&r1=550346&r2=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java (original)
+++ ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java Sun Jun 24 22:04:47 2007
@@ -22,17 +22,37 @@
 import java.io.OutputStream;
 import java.io.OutputStreamWriter;
 import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.io.Writer;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
 import java.util.Map;
+import java.sql.Timestamp;
 
 import org.w3c.dom.Document;
 
 import org.ofbiz.service.DispatchContext;
+import org.ofbiz.service.LocalDispatcher;
 import org.ofbiz.service.ServiceUtil;
 import org.ofbiz.base.util.*;
+import org.ofbiz.base.util.collections.MapStack;
+import org.ofbiz.entity.GenericDelegator;
+import org.ofbiz.entity.GenericEntityException;
+import org.ofbiz.entity.GenericValue;
+import org.ofbiz.entity.util.EntityUtil;
+
+import org.ofbiz.widget.fo.FoFormRenderer;
+import org.ofbiz.widget.screen.ScreenRenderer;
+import org.ofbiz.widget.html.HtmlScreenRenderer;
 
 public class OagisShipmentServices {
     
     public static final String module = OagisShipmentServices.class.getName();
+
+    protected static final HtmlScreenRenderer htmlScreenRenderer = new HtmlScreenRenderer();
+    protected static final FoFormRenderer foFormRenderer = new FoFormRenderer();
     
     public static Map showShipment(DispatchContext ctx, Map context) {
         InputStream in = (InputStream) context.get("inputStream");
@@ -50,4 +70,114 @@
         
     }
     
-}
\ No newline at end of file
+    public static Map exportMsgFromScreen(DispatchContext dctx, Map serviceContext) {
+
+        String bodyScreenUri = (String) serviceContext.remove("bodyScreenUri");
+        Map bodyParameters = (Map) serviceContext.remove("bodyParameters");
+
+        MapStack screenContext = MapStack.create();
+        Writer bodyWriter = new StringWriter();
+        ScreenRenderer screens = new ScreenRenderer(bodyWriter, screenContext, htmlScreenRenderer);
+        if (bodyParameters != null) {
+            screens.populateContextForService(dctx, bodyParameters);
+            screenContext.putAll(bodyParameters);
+        }
+        screenContext.putAll(serviceContext);
+        screens.getContext().put("formStringRenderer", foFormRenderer);
+        try {
+            screens.render(bodyScreenUri);
+        } catch (Exception e) {
+            String errMsg = "Error rendering [text/xml]: " + e.toString();
+            Debug.logError(e, errMsg, module);
+            return ServiceUtil.returnError(errMsg);
+        }
+        Map result = ServiceUtil.returnSuccess();
+        Debug.logInfo(bodyWriter.toString(), module);
+        result.put("body", bodyWriter.toString());
+        return result;
+    }
+
+    public static Map processShipment(DispatchContext ctx, Map context) {
+        LocalDispatcher dispatcher = ctx.getDispatcher();
+        GenericDelegator delegator = ctx.getDelegator();
+        String orderId = (String) context.get("orderId");
+        String shipmentId = (String) context.get("shipmentId");
+        GenericValue userLogin = (GenericValue) context.get("userLogin");
+
+        GenericValue orderHeader = null;
+        try {
+            orderHeader = delegator.findByPrimaryKey("OrderHeader", UtilMisc.toMap("orderId", orderId));
+        } catch (GenericEntityException e) {
+            Debug.logError(e, module);
+            return ServiceUtil.returnError(e.getMessage());
+        }
+        Map csResult = null;
+        Map psmMap = new HashMap();
+        GenericValue orderItemShipGroup = null;
+        GenericValue productStore =null;
+        String orderStatusId = null;
+        if (orderHeader != null) {
+            orderStatusId = orderHeader.getString("statusId");
+            if (orderStatusId.equals("ORDER_APPROVED")) {
+                try {
+                    orderItemShipGroup = EntityUtil.getFirst(delegator.findByAnd("OrderItemShipGroup", UtilMisc.toMap("orderId", orderId), UtilMisc.toList("shipGroupSeqId")));
+                    String productStoreId = orderHeader.getString("productStoreId");
+                    productStore = delegator.findByPrimaryKey("ProductStore", UtilMisc.toMap("productStoreId", productStoreId));
+                    String originFacilityId = productStore.getString("inventoryFacilityId");
+                    String statusId = "SHIPMENT_INPUT";
+                    
+                    csResult= dispatcher.runSync("createShipment", UtilMisc.toMap("primaryOrderId", orderId,"primaryShipGroupSeqId",orderItemShipGroup.get("shipGroupSeqId") ,"statusId", statusId ,"originFacilityId", originFacilityId ,"userLogin", userLogin));
+                    shipmentId = (String) csResult.get("shipmentId");
+
+                    List orderItems = new ArrayList();
+                    Map orderItemCtx = new HashMap();
+                    orderItems = delegator.findByAnd("OrderItem", UtilMisc.toMap("orderId", orderId));
+                    Iterator oiIter = orderItems.iterator();
+                    while (oiIter.hasNext()) {
+                        GenericValue orderItem = (GenericValue) oiIter.next();
+                        
+                        orderItemCtx.put("orderId", orderItem.get("orderId"));
+                        orderItemCtx.put("orderItemSeqId", orderItem.get("orderItemSeqId"));
+                        orderItemCtx.put("shipmentId", shipmentId);
+                        orderItemCtx.put("quantity", orderItem.get("quantity"));
+                        orderItemCtx.put("userLogin", userLogin);
+                        
+                        dispatcher.runSync("addOrderShipmentToShipment", orderItemCtx);
+                    }
+                    String logicalId = UtilProperties.getPropertyValue("oagis.properties", "CNTROLAREA.SENDER.LOGICALID");
+                    String authId = UtilProperties.getPropertyValue("oagis.properties", "CNTROLAREA.SENDER.AUTHID");
+                    String referenceId = delegator.getNextSeqId("OagisMessageInfo");
+                    Timestamp timestamp = null;
+                    timestamp = UtilDateTime.nowTimestamp();
+
+                    psmMap.put("logicalId", logicalId);
+                    psmMap.put("authId", authId);
+                    psmMap.put("referenceId", referenceId);
+                    psmMap.put("sentDate", timestamp);
+                    psmMap.put("shipmentId", shipmentId);
+                    psmMap.put("userLogin", userLogin);
+                    
+                    // send the process shipment message
+                    dispatcher.runSync("sendProcessShipmentMsg", psmMap);                    
+                } catch (Exception e) {
+                    Debug.logError("Error in processing" + e.getMessage(), module);
+                }
+            }
+        }
+        psmMap.put("component", "INVENTORY");
+        psmMap.put("task", "SHIPREQUES"); // Actual value of task is "SHIPREQUES" which is more than 10 char
+        psmMap.put("outgoingMessage", "Y");
+        psmMap.put("confirmation", "1");
+        psmMap.put("bsrVerb", "PROCESS");
+        psmMap.put("bsrNoun", "SHIPMENT");
+        psmMap.put("bsrRevision", "001");
+        psmMap.put("processingStatusId", orderStatusId);        
+        psmMap.put("orderId", orderId);        
+        try {
+            dispatcher.runSync("createOagisMessageInfo", psmMap);
+        } catch (Exception e) {
+            return ServiceUtil.returnError("error in creating message info" + e.getMessage());
+        }
+        return ServiceUtil.returnSuccess();
+    }
+}

Added: ofbiz/trunk/specialpurpose/oagis/webapp/oagis/WEB-INF/actions/message/ProcessShipment.bsh
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/webapp/oagis/WEB-INF/actions/message/ProcessShipment.bsh?view=auto&rev=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/webapp/oagis/WEB-INF/actions/message/ProcessShipment.bsh (added)
+++ ofbiz/trunk/specialpurpose/oagis/webapp/oagis/WEB-INF/actions/message/ProcessShipment.bsh Sun Jun 24 22:04:47 2007
@@ -0,0 +1,51 @@
+/**
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+**/
+
+import org.ofbiz.base.util.UtilMisc;
+import org.ofbiz.entity.GenericEntity;
+import org.ofbiz.entity.GenericValue;
+import org.ofbiz.entity.GenericDelegator;
+import org.ofbiz.entity.util.EntityUtil;
+import org.ofbiz.order.order.OrderReadHelper;
+
+shipmentId = parameters.get("shipmentId");
+if (shipmentId != null) {
+    shipment = delegator.findByPrimaryKey("Shipment", UtilMisc.toMap("shipmentId", shipmentId));
+    
+    orderId = shipment.getString("primaryOrderId");
+    orderHeader = delegator.findByPrimaryKey("OrderHeader", UtilMisc.toMap("orderId", orderId));
+    OrderReadHelper orderReadHelper = new OrderReadHelper(orderHeader);
+    if(orderReadHelper.hasShippingAddress()) {
+        address = EntityUtil.getFirst(orderReadHelper.getShippingLocations());
+    }
+    emailString = orderReadHelper.getOrderEmailString();
+
+    contactMechId = shipment.get("destinationTelecomNumberId");
+    telecomNumber = delegator.findByPrimaryKey("TelecomNumber", UtilMisc.toMap("contactMechId", contactMechId));
+
+    shipmentItems = delegator.findByAnd("ShipmentItem", UtilMisc.toMap("shipmentId", shipmentId));
+    orderItemShipGroup = EntityUtil.getFirst(delegator.findByAnd("OrderItemShipGroup", UtilMisc.toMap("orderId", orderId)));
+    
+    context.put("shipment", shipment);
+    context.put("address", address);
+    context.put("emailString", emailString);
+    context.put("telecomNumber", telecomNumber);
+    context.put("shipmentItems", shipmentItems);
+    context.put("orderItemShipGroup", orderItemShipGroup);
+}

Added: ofbiz/trunk/specialpurpose/oagis/webapp/oagis/message/ProcessShipment.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/webapp/oagis/message/ProcessShipment.ftl?view=auto&rev=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/webapp/oagis/message/ProcessShipment.ftl (added)
+++ ofbiz/trunk/specialpurpose/oagis/webapp/oagis/message/ProcessShipment.ftl Sun Jun 24 22:04:47 2007
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<#--
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+    
+    http://www.apache.org/licenses/LICENSE-2.0
+    
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+-->
+<n:PROCESS_SHIPMENT_001 xmlns:n="http://www.openapplications.org/161B_PROCESS_SHIPMENT_001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openapplications.org/161B_PROCESS_SHIPMENT_001 file:///C:/Documents%20and%20Settings/022523/My%20Documents/Vudu/XML%20Specs/REL%201%20-%20VER%202/161B_process_shipment_005.xsd" xmlns:N1="http://www.openapplications.org/oagis_segments" xmlns:N2="http://www.openapplications.org/oagis_fields">
+  <N1:CNTROLAREA>
+    <N1:BSR>
+      <N2:VERB>PROCESS</N2:VERB>
+      <N2:NOUN>SHIPMENT</N2:NOUN>
+      <N2:REVISION>001</N2:REVISION>
+    </N1:BSR>
+    <N1:SENDER>
+      <N2:LOGICALID>${logicalId?if_exists}</N2:LOGICALID>
+      <N2:COMPONENT>INVENTORY</N2:COMPONENT>
+      <N2:TASK>SHIPREQUEST</N2:TASK>
+      <N2:REFERENCEID>${referenceId?if_exists}</N2:REFERENCEID>
+      <N2:CONFIRMATION>1</N2:CONFIRMATION>
+      <N2:LANGUAGE>ENG</N2:LANGUAGE>
+      <N2:CODEPAGE>NONE</N2:CODEPAGE>
+      <N2:AUTHID>${authId?if_exists}</N2:AUTHID>
+    </N1:SENDER>
+    <N1:DATETIMEANY>${sentDate?if_exists}</N1:DATETIMEANY>
+  </N1:CNTROLAREA>
+  <n:DATAAREA>
+    <n:PROCESS_SHIPMENT>
+      <n:SHIPMENT>
+        <N2:DOCUMENTID>${shipment.shipmentId?if_exists}</N2:DOCUMENTID>
+        <N2:SHIPPERID></N2:SHIPPERID>
+        <N2:CARRIER>${orderItemShipGroup.carrierPartyId?if_exists}</N2:CARRIER>
+        <N2:FRGHTTERMS></N2:FRGHTTERMS>
+        <N2:NOTES></N2:NOTES>
+        <N2:SHIPNOTES>RETURNLABEL</N2:SHIPNOTES>
+        <N2:TRANSMETHD>${orderItemShipGroup.shipmentMethodTypeId?if_exists}</N2:TRANSMETHD>
+        <N1:PARTNER>
+          <#if address?has_content>
+            <N2:NAME>${address.toName?if_exists}</N2:NAME>
+            <N2:PARTNRTYPE>SHIPTO</N2:PARTNRTYPE>
+            <N2:CURRENCY>USD</N2:CURRENCY>
+            <N1:ADDRESS>
+              <N2:ADDRLINE>${address.address1?if_exists}</N2:ADDRLINE>
+                <#if address.address2?exists>
+                  <N2:ADDRLINE>${address.address2}</N2:ADDRLINE>
+                </#if>
+              <N2:CITY>${address.city?if_exists}</N2:CITY>
+              <N2:COUNTRY>${address.countryGeoId?if_exists}</N2:COUNTRY>
+              <N2:DESCRIPTN></N2:DESCRIPTN>
+              <N2:FAX></N2:FAX>
+              <N2:POSTALCODE>${address.postalCode?if_exists}</N2:POSTALCODE>
+              <N2:STATEPROVN>${address.stateProvinceGeoId?if_exists}</N2:STATEPROVN>
+              <N2:TELEPHONE>${telecomNumber.countryCode?if_exists}${telecomNumber.areaCode?if_exists}-${telecomNumber.contactNumber?if_exists}</N2:TELEPHONE>
+            </N1:ADDRESS>
+            <N1:CONTACT>
+              <N2:NAME>${address.toName?if_exists}</N2:NAME>
+              <N2:EMAIL>${emailString?if_exists}</N2:EMAIL>
+              <N2:FAX></N2:FAX>
+              <N2:TELEPHONE>${telecomNumber.countryCode?if_exists}${telecomNumber.areaCode?if_exists}-${telecomNumber.contactNumber?if_exists}</N2:TELEPHONE>
+            </N1:CONTACT>
+          </#if>
+        </N1:PARTNER>
+        <n:SHIPITEM>
+          <#list shipmentItems as shipmentItem>
+            <N1:QUANTITY>
+              <N2:VALUE>${shipmentItem.quantity?if_exists}</N2:VALUE>
+              <N2:NUMOFDEC>0</N2:NUMOFDEC>
+              <N2:SIGN>+</N2:SIGN>
+              <N2:UOM>EACH</N2:UOM>
+            </N1:QUANTITY>
+            <N2:ITEM>${shipmentItem.productId?if_exists}</N2:ITEM>
+          </#list>
+          <N2:DISPOSITN>FIFO</N2:DISPOSITN>
+          <n:DOCUMNTREF>
+            <N2:DOCTYPE>SHIPMENT</N2:DOCTYPE>
+            <N2:DOCUMENTID></N2:DOCUMENTID>
+            <N2:LINENUM></N2:LINENUM>
+          </n:DOCUMNTREF>
+        </n:SHIPITEM>
+      </n:SHIPMENT>
+    </n:PROCESS_SHIPMENT>
+  </n:DATAAREA>
+</n:PROCESS_SHIPMENT_001>

Modified: ofbiz/trunk/specialpurpose/oagis/widget/MessageInfoScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/widget/MessageInfoScreens.xml?view=diff&rev=550347&r1=550346&r2=550347
==============================================================================
--- ofbiz/trunk/specialpurpose/oagis/widget/MessageInfoScreens.xml (original)
+++ ofbiz/trunk/specialpurpose/oagis/widget/MessageInfoScreens.xml Sun Jun 24 22:04:47 2007
@@ -103,4 +103,17 @@
         </section>
     </screen>
     
+    <screen name="ProcessShipment">
+        <section>
+            <actions>
+                <script location="component://oagis/webapp/oagis/WEB-INF/actions/message/ProcessShipment.bsh"/>
+            </actions>
+            <widgets>
+                <platform-specific>
+                    <html><html-template location="component://oagis/webapp/oagis/message/ProcessShipment.ftl"/></html>                      
+                </platform-specific>
+            </widgets>
+        </section>
+    </screen>
+    
 </screens>