[jira] Created: (OFBIZ-350) Implement the VOID shipment service call to DHL ShipIT API

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

[jira] Created: (OFBIZ-350) Implement the VOID shipment service call to DHL ShipIT API

Nicolas Malin (Jira)
Implement the VOID shipment service call to DHL ShipIT API
----------------------------------------------------------

                 Key: OFBIZ-350
                 URL: http://issues.apache.org/jira/browse/OFBIZ-350
             Project: OFBiz (The Open for Business Project)
          Issue Type: New Feature
          Components: product
    Affects Versions: SVN trunk
         Environment: WinXP / Java 1.5 / mySQL
            Reporter: John Martin


DHL provides an API service call to void an air bill number.  There are a number of reasons that one might want to void an air bill including some of the error recovery in the Generate Label (aka Confirm Shipment) code.  

The functionality will automatically invoked as part of Update function when the Carrier Status is changed from Approved to Voided in the EditShipmentRouteSegments form.  The Delete action on the form will also need to invoke the Void service.

It will probably be best to use a Command Pattern that abstracts the carrier and have that class invoke the method on the appropriate carrier.  Right now there is conditional code in the from for UPS and DHL and is getting kind of ugly.

I am currently implementing this in conjuction with https://issues.apache.org/jira/browse/OFBIZ-307 as well as another issue to be entered for a feature to do Shipment Tracking for DHL.


--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       
Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-350) Implement the VOID shipment service call to DHL ShipIT API

Nicolas Malin (Jira)
    [ http://issues.apache.org/jira/browse/OFBIZ-350?page=comments#action_12439938 ]
           
John Martin commented on OFBIZ-350:
-----------------------------------

I am looking for some feedback on two issues:

1) How to handle unconfirmed VOID transactions?

A few facts:

- With DHL's API you can only void a shipment the day that it was
generated up until 10pm local time.

- Under certain circumstances, I have found that the API returns in
appropriate Result Codes so you can't confirm that the shipment was in
fact cancelled.

Given this, when I attempt to void a label and I'm not 100% certain, I
am wondering if I should handle things differently?  One thought is to
create a new Status "Void Unconfirmed".   This would allow the shipper
to identify packages that are questionable which should be reconciled
with the DHL billing.

I spoke with our DHL representative and she stated that typically
shipments are not billed unless the label was scanned by DHL during
shipping but there have been situations when shipments have been
billed even though never shipped.

2) Disabling the Delete button?

Once a label has been generated, I'm thinking that the Delete button
should be disabled since the shipment is now a potential real cost to
the business.  An employee could abuse the system by shipping
something personal and then deleting the transaction.  My
recommendation is that once the label is created/shipment is
confirmed, that it can only be voided.  This will at least leave
evidence of some sort of transaction.

Any thoughts or suggestions?

> Implement the VOID shipment service call to DHL ShipIT API
> ----------------------------------------------------------
>
>                 Key: OFBIZ-350
>                 URL: http://issues.apache.org/jira/browse/OFBIZ-350
>             Project: OFBiz (The Open for Business Project)
>          Issue Type: New Feature
>          Components: product
>    Affects Versions: SVN trunk
>         Environment: WinXP / Java 1.5 / mySQL
>            Reporter: John Martin
>
> DHL provides an API service call to void an air bill number.  There are a number of reasons that one might want to void an air bill including some of the error recovery in the Generate Label (aka Confirm Shipment) code.  
> The functionality will automatically invoked as part of Update function when the Carrier Status is changed from Approved to Voided in the EditShipmentRouteSegments form.  The Delete action on the form will also need to invoke the Void service.
> It will probably be best to use a Command Pattern that abstracts the carrier and have that class invoke the method on the appropriate carrier.  Right now there is conditional code in the from for UPS and DHL and is getting kind of ugly.
> I am currently implementing this in conjuction with https://issues.apache.org/jira/browse/OFBIZ-307 as well as another issue to be entered for a feature to do Shipment Tracking for DHL.

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       
Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-350) Implement the VOID shipment service call to DHL ShipIT API

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)
    [ http://issues.apache.org/jira/browse/OFBIZ-350?page=comments#action_12440156 ]
           
John Martin commented on OFBIZ-350:
-----------------------------------

I've added a new status code for the ShipmentPackageRouteSeg.carrierServiceCodeId which is "Voided, unconfirmed by carrier'.  This status will be used if the package is voided after the sameday deadline set by DHL or we're unable to get a confirming response code from their API call.

In order to use this new feature, you will need to add the new status code to the StatusItem table.  Here is SQL to do that.

INSERT INTO status_item (status_id, status_type_id, status_code, sequence_id, description)
VALUES ('SHRSCS_VOIDED_UNCONF', 'SHPRTSG_CS_STATUS', 'VOIDED_UNCONF', '09', 'Voided, unconfirmed by carrier');

I'll patch data XML to include this for new installations.


> Implement the VOID shipment service call to DHL ShipIT API
> ----------------------------------------------------------
>
>                 Key: OFBIZ-350
>                 URL: http://issues.apache.org/jira/browse/OFBIZ-350
>             Project: OFBiz (The Open for Business Project)
>          Issue Type: New Feature
>          Components: product
>    Affects Versions: SVN trunk
>         Environment: WinXP / Java 1.5 / mySQL
>            Reporter: John Martin
>
> DHL provides an API service call to void an air bill number.  There are a number of reasons that one might want to void an air bill including some of the error recovery in the Generate Label (aka Confirm Shipment) code.  
> The functionality will automatically invoked as part of Update function when the Carrier Status is changed from Approved to Voided in the EditShipmentRouteSegments form.  The Delete action on the form will also need to invoke the Void service.
> It will probably be best to use a Command Pattern that abstracts the carrier and have that class invoke the method on the appropriate carrier.  Right now there is conditional code in the from for UPS and DHL and is getting kind of ugly.
> I am currently implementing this in conjuction with https://issues.apache.org/jira/browse/OFBIZ-307 as well as another issue to be entered for a feature to do Shipment Tracking for DHL.

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       
Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-350) Implement the VOID shipment service call to DHL ShipIT API

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)
    [ http://issues.apache.org/jira/browse/OFBIZ-350?page=comments#action_12440530 ]
           
Si Chen commented on OFBIZ-350:
-------------------------------

It sounds reasonable to have a new "Void" status which can be after Confirmed/Accepted.  You can have it so that your void service will set the route segment to this status.

Also, it sounds reasonable that the delete option should not be available except when the shipment is in the "Not Started" status.

> Implement the VOID shipment service call to DHL ShipIT API
> ----------------------------------------------------------
>
>                 Key: OFBIZ-350
>                 URL: http://issues.apache.org/jira/browse/OFBIZ-350
>             Project: OFBiz (The Open for Business Project)
>          Issue Type: New Feature
>          Components: product
>    Affects Versions: SVN trunk
>         Environment: WinXP / Java 1.5 / mySQL
>            Reporter: John Martin
>
> DHL provides an API service call to void an air bill number.  There are a number of reasons that one might want to void an air bill including some of the error recovery in the Generate Label (aka Confirm Shipment) code.  
> The functionality will automatically invoked as part of Update function when the Carrier Status is changed from Approved to Voided in the EditShipmentRouteSegments form.  The Delete action on the form will also need to invoke the Void service.
> It will probably be best to use a Command Pattern that abstracts the carrier and have that class invoke the method on the appropriate carrier.  Right now there is conditional code in the from for UPS and DHL and is getting kind of ugly.
> I am currently implementing this in conjuction with https://issues.apache.org/jira/browse/OFBIZ-307 as well as another issue to be entered for a feature to do Shipment Tracking for DHL.

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       
Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-350) Implement the VOID shipment service call to DHL ShipIT API

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)
    [ http://issues.apache.org/jira/browse/OFBIZ-350?page=comments#action_12450811 ]
           
Si Chen commented on OFBIZ-350:
-------------------------------

are you still working on this?

> Implement the VOID shipment service call to DHL ShipIT API
> ----------------------------------------------------------
>
>                 Key: OFBIZ-350
>                 URL: http://issues.apache.org/jira/browse/OFBIZ-350
>             Project: OFBiz (The Open for Business Project)
>          Issue Type: New Feature
>          Components: product
>    Affects Versions: SVN trunk
>         Environment: WinXP / Java 1.5 / mySQL
>            Reporter: John Martin
>
> DHL provides an API service call to void an air bill number.  There are a number of reasons that one might want to void an air bill including some of the error recovery in the Generate Label (aka Confirm Shipment) code.  
> The functionality will automatically invoked as part of Update function when the Carrier Status is changed from Approved to Voided in the EditShipmentRouteSegments form.  The Delete action on the form will also need to invoke the Void service.
> It will probably be best to use a Command Pattern that abstracts the carrier and have that class invoke the method on the appropriate carrier.  Right now there is conditional code in the from for UPS and DHL and is getting kind of ugly.
> I am currently implementing this in conjuction with https://issues.apache.org/jira/browse/OFBIZ-307 as well as another issue to be entered for a feature to do Shipment Tracking for DHL.

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       
Reply | Threaded
Open this post in threaded view
|

Re: [jira] Commented: (OFBIZ-350) Implement the VOID shipment service call to DHL ShipIT API

John Martin
Hi Si,

Yes - I have the bulk of the code done.

The api call to DHL to void the shipment is all in place and working.  The
integration with the UI has not taken place yet.  One problem that I'm
having is that I have a bunch of code changes for the DHL shipping and I'm
trying to get it all finished to check in all at once.  Hopefully I can wrap
up the shipping stuff next week.  I don't know when I can hook the UI stuff
in.

John