details: https://code.openbravo.com/erp/devel/pi/rev/c8f69b3d8d6c
changeset: 20305:c8f69b3d8d6c
user: Ioritz Cia <ioritz.cia <at> openbravo.com>
date: Thu May 09 15:56:54 2013 +0200
summary: Fixes issue 22955: Not possible to filter by Return documents
in Product Movement Report.
diffstat:
src-db/database/sourcedata/AD_TEXTINTERFACES.xml | 22 ++
src/org/openbravo/erpCommon/ad_reports/ReportProductMovement.html | 88
+++++++++-
src/org/openbravo/erpCommon/ad_reports/ReportProductMovement.java | 46
+++-
src/org/openbravo/erpCommon/ad_reports/ReportProductMovement.xml | 25 ++
src/org/openbravo/erpCommon/ad_reports/ReportProductMovement_data.xsql | 4 +-
5 files changed, 168 insertions(+), 17 deletions(-)
diffs (truncated from 372 to 300 lines):
diff -r 01fcd3b1e098 -r c8f69b3d8d6c
src-db/database/sourcedata/AD_TEXTINTERFACES.xml
--- a/src-db/database/sourcedata/AD_TEXTINTERFACES.xml Thu May 09 19:21:21
2013 +0200
+++ b/src-db/database/sourcedata/AD_TEXTINTERFACES.xml Thu May 09 15:56:54
2013 +0200
@@ -15122,6 +15122,17 @@
<!--5A77AA3628F14721BD9C4A7DB1ACDB60-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
<!--5A77AA3628F14721BD9C4A7DB1ACDB60--></AD_TEXTINTERFACES>
+<!--5ABED706C5DF4E76B061236463296FA4--><AD_TEXTINTERFACES>
+<!--5ABED706C5DF4E76B061236463296FA4-->
<AD_TEXTINTERFACES_ID><![CDATA[5ABED706C5DF4E76B061236463296FA4]]></AD_TEXTINTERFACES_ID>
+<!--5ABED706C5DF4E76B061236463296FA4-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--5ABED706C5DF4E76B061236463296FA4--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--5ABED706C5DF4E76B061236463296FA4--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--5ABED706C5DF4E76B061236463296FA4--> <TEXT><![CDATA[Return Material
Receipt/Return to Vendor Shipment]]></TEXT>
+<!--5ABED706C5DF4E76B061236463296FA4-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_reports/ReportProductMovement.html]]></FILENAME>
+<!--5ABED706C5DF4E76B061236463296FA4--> <ISUSED><![CDATA[Y]]></ISUSED>
+<!--5ABED706C5DF4E76B061236463296FA4-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--5ABED706C5DF4E76B061236463296FA4--></AD_TEXTINTERFACES>
+
<!--5AE12FD8B5CBEDF0E040007F01014C1A--><AD_TEXTINTERFACES>
<!--5AE12FD8B5CBEDF0E040007F01014C1A-->
<AD_TEXTINTERFACES_ID><![CDATA[5AE12FD8B5CBEDF0E040007F01014C1A]]></AD_TEXTINTERFACES_ID>
<!--5AE12FD8B5CBEDF0E040007F01014C1A-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -16761,6 +16772,17 @@
<!--6C686CCD6CF94FF69CCF009E8549D849-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
<!--6C686CCD6CF94FF69CCF009E8549D849--></AD_TEXTINTERFACES>
+<!--6C79754FD7CD4172BD4F2208A416D3D0--><AD_TEXTINTERFACES>
+<!--6C79754FD7CD4172BD4F2208A416D3D0-->
<AD_TEXTINTERFACES_ID><![CDATA[6C79754FD7CD4172BD4F2208A416D3D0]]></AD_TEXTINTERFACES_ID>
+<!--6C79754FD7CD4172BD4F2208A416D3D0-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--6C79754FD7CD4172BD4F2208A416D3D0--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--6C79754FD7CD4172BD4F2208A416D3D0--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--6C79754FD7CD4172BD4F2208A416D3D0--> <TEXT><![CDATA[Return M.R./Return to
V.S.]]></TEXT>
+<!--6C79754FD7CD4172BD4F2208A416D3D0-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_reports/ReportProductMovement.html]]></FILENAME>
+<!--6C79754FD7CD4172BD4F2208A416D3D0--> <ISUSED><![CDATA[Y]]></ISUSED>
+<!--6C79754FD7CD4172BD4F2208A416D3D0-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--6C79754FD7CD4172BD4F2208A416D3D0--></AD_TEXTINTERFACES>
+
<!--6C917BC895CB41199D4C6825D5D23403--><AD_TEXTINTERFACES>
<!--6C917BC895CB41199D4C6825D5D23403-->
<AD_TEXTINTERFACES_ID><![CDATA[6C917BC895CB41199D4C6825D5D23403]]></AD_TEXTINTERFACES_ID>
<!--6C917BC895CB41199D4C6825D5D23403-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 01fcd3b1e098 -r c8f69b3d8d6c
src/org/openbravo/erpCommon/ad_reports/ReportProductMovement.html
--- a/src/org/openbravo/erpCommon/ad_reports/ReportProductMovement.html Thu May
09 19:21:21 2013 +0200
+++ b/src/org/openbravo/erpCommon/ad_reports/ReportProductMovement.html Thu May
09 15:56:54 2013 +0200
@@ -89,6 +89,17 @@
myframe.OB.Utilities.openDirectTab('800202', recordid); //Internal
Consumption
}
}
+ function openReturnDoc(recordId, issotrx){
+ var myframe = getFrame('LayoutMDI') || top.opener;
+ if (myframe) {
+ if (issotrx == 'Y'){
+ myframe.OB.Utilities.openDirectTab('30576C6ABD12419F9D19D497216FC9B8',
recordId); //Return Material Receipt
+ }
+ else{
+ myframe.OB.Utilities.openDirectTab('728DBD16A1F14A4D82335E37BA433E33',
recordId); //Return to Vendor Shipment
+ }
+ }
+ }
function validate(action)
{
var frm = document.frmMain;
@@ -419,19 +430,22 @@
<td class="TitleCell"><span
class="LabelText">Shipment/Receipt</span></td>
<td class="Radio_Check_ContentCell"><span
class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpInout"
id="paramInOut" value="-1" checked></input></span></td>
<td class="ContentCell"> </td>
+ <td class="TitleCell"><span class="LabelText">Return M.R./Return
to V.S.</span></td>
+ <td class="Radio_Check_ContentCell"><span
class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpReturn"
id="paramReturn" value="-1" checked></input></span></td>
+ <td class="ContentCell"> </td>
+ </tr>
+ <tr>
<td class="TitleCell"><span class="LabelText">Physical
Inventory</span></td>
<td class="Radio_Check_ContentCell"><span
class="Checkbox_container_NOT_Focused"><input type="checkbox"
name="inpInventory" id="paramInventory" value="-1" checked></input></span></td>
<td class="ContentCell"> </td>
- </tr>
- <tr>
<td class="TitleCell"><span class="LabelText">Inventory
Move</span></td>
<td class="Radio_Check_ContentCell"><span
class="Checkbox_container_NOT_Focused"><input type="checkbox"
name="inpMovement" id="paramMovement" value="-1" checked></input></span></td>
<td class="ContentCell"> </td>
+ </tr>
+ <tr>
<td class="TitleCell"><span
class="LabelText">Production</span></td>
<td class="Radio_Check_ContentCell"><span
class="Checkbox_container_NOT_Focused"><input type="checkbox"
name="inpProduction" id="paramProduction" value="-1"
checked></input></span></td>
<td class="ContentCell"> </td>
- </tr>
- <tr>
<td class="TitleCell"><span class="LabelText">Internal
Consumption</span></td>
<td class="Radio_Check_ContentCell"><span
class="Checkbox_container_NOT_Focused"><input type="checkbox"
name="inpInternalConsumption" id="paramInternalConsumption" value="-1"
checked></input></span></td>
<td class="ContentCell"> </td>
@@ -535,7 +549,7 @@
<th width="6%" class="DataGrid_Header_Cell">Quantity</th>
</tr>
<div id="sectionDetail">
- <tr class="DataGrid_Body_Row DataGrid_Body_Row_yy"
id="funcEvenOddRow1xx">
+ <tr class="DataGrid_Body_Row DataGrid_Body_Row_yy"
id="funcEvenOddRowxx">
<td width="8%" class="DataGrid_Body_Cell"><a href="#"
onclick="ShipmentOrReceipt('xx', 'yy');return false;"
onmouseover="window.status='Incoming/Outgoing';return true;"
onmouseout="window.status='';return true;" class="LabelLink" id="fieldId">
<span
id="fieldDocumentNo">xx850000007</span></a></td>
<td width="8%" class="DataGrid_Body_Cell"
id="fieldMovementdate">xxfd200</td>
@@ -555,6 +569,70 @@
</div>
</div>
</table>
+ <div style="height:25px;" />
+ <table cellspacing="0" cellpadding="0" width="100%"
class="DataGrid_Header_Table DataGrid_Body_Table" style="table-layout: auto;"
id="selEliminar6">
+ <tr class="DataGrid_Body_Row">
+ <th class="DataGrid_Header_Cell" colspan="14"><span>Return
Material Receipt/Return to Vendor Shipment</span></th>
+ </tr>
+ <div id="sectionPartner6">
+ <tr class="DataGrid_Body_Row">
+ <th colspan="14"
class="DataGrid_Header_Cell"><span>Customer<span>: </span><span
id="fieldPartnername6">xxAguinaga</span></span></th>
+ </tr>
+ <tr class="DataGrid_Body_Row">
+ <th width="8%" class="DataGrid_Header_Cell">Document
No.</th>
+ <th width="8%" class="DataGrid_Header_Cell">Date</th>
+ <th width="12%"
class="DataGrid_Header_Cell">Description</th>
+ <th width="10%"
class="DataGrid_Header_Cell">Attribute</th>
+ <th width="16%" class="DataGrid_Header_Cell">Starting
Warehouse</th>
+ <th width="9%" class="DataGrid_Header_Cell" colspan="3">
+ <table width="100%" border="0" cellspacing="0"
cellpadding="0" style="background: none; border: 0px none">
+ <tr class="DataGrid_Header_Cell">
+ <th class="DataGrid_Header_Cell" width="100%"
colspan="3" style="background: none; border: 0px none">Starting location</th>
+ </tr>
+ <tr class="DataGrid_Header_Cell">
+ <th class="DataGrid_Header_Cell" width="34%"
style="background: none; border: 0px none">X</th>
+ <th class="DataGrid_Header_Cell" width="33%"
style="background: none; border: 0px none">Y</th>
+ <th class="DataGrid_Header_Cell" width="33%"
style="background: none; border: 0px none">Z</th>
+ </tr>
+ </table>
+ </th>
+ <th width="16%" class="DataGrid_Header_Cell">Final
Warehouse</th>
+ <th width="9%" class="DataGrid_Header_Cell" colspan="3">
+ <table width="100%" border="0" cellspacing="0"
cellpadding="0" style="background: none; border: 0px none">
+ <tr class="DataGrid_Header_Cell" style="background:
none; border: 0px none">
+ <th class="DataGrid_Header_Cell" width="100%"
colspan="3" style="background: none; border: 0px none">Final location</th>
+ </tr>
+ <tr class="DataGrid_Header_Cell">
+ <th class="DataGrid_Header_Cell" width="34%"
style="background: none; border: 0px none">X</th>
+ <th class="DataGrid_Header_Cell" width="33%"
style="background: none; border: 0px none">Y</th>
+ <th class="DataGrid_Header_Cell" width="33%"
style="background: none; border: 0px none">Z</th>
+ </tr>
+ </table>
+ </th>
+ <th width="6%" class="DataGrid_Header_Cell">Exit</th>
+ <th width="6%" class="DataGrid_Header_Cell">Quantity</th>
+ </tr>
+ <div id="sectionDetail6">
+ <tr class="DataGrid_Body_Row DataGrid_Body_Row_yy"
id="funcEvenOddRow6xx">
+ <td width="8%" class="DataGrid_Body_Cell"><a href="#"
onclick="openReturnDoc('xx', 'yy');return false;"
onmouseover="window.status='Incoming/Outgoing';return true;"
onmouseout="window.status='';return true;" class="LabelLink" id="fieldId6">
+ <span
id="fieldDocumentNo6">xx850000007</span></a></td>
+ <td width="8%" class="DataGrid_Body_Cell"
id="fieldMovementdate6">xxfd200</td>
+ <td width="12%" class="DataGrid_Body_Cell"
id="fieldName6">xx2345</td>
+ <td width="10%" class="DataGrid_Body_Cell"
id="fieldAttr6">xx2345</td>
+ <td width="16%" class="DataGrid_Body_Cell"
id="fieldWaOrigin6">xx3</td>
+ <td width="3%" class="DataGrid_Body_Cell"
id="fieldXOrigin6">xx3</td>
+ <td width="3%" class="DataGrid_Body_Cell"
id="fieldYOrigin6">xx3</td>
+ <td width="3%" class="DataGrid_Body_Cell"
id="fieldZOrigin6">xx3</td>
+ <td width="16%" class="DataGrid_Body_Cell"
id="fieldWaDestiny6">xx2</td>
+ <td width="3%" class="DataGrid_Body_Cell"
id="fieldXDestiny6">xx2</td>
+ <td width="3%" class="DataGrid_Body_Cell"
id="fieldYDestiny6">xx2</td>
+ <td width="3%" class="DataGrid_Body_Cell"
id="fieldZDestiny6">xx2</td>
+ <td width="6%" class="DataGrid_Body_Cell"
id="fieldOut6">xxsi</td>
+ <td width="6%" class="DataGrid_Body_Cell"
id="fieldMovementqty6">xx23</td>
+ </tr>
+ </div>
+ </div>
+ </table>
<div style="height:15px;" />
<table cellspacing="0" cellpadding="0" width="100%"
class="DataGrid_Header_Table DataGrid_Body_Table" style="table-layout: auto;"
id="selEliminar2">
<tr class="DataGrid_Body_Row">
diff -r 01fcd3b1e098 -r c8f69b3d8d6c
src/org/openbravo/erpCommon/ad_reports/ReportProductMovement.java
--- a/src/org/openbravo/erpCommon/ad_reports/ReportProductMovement.java Thu May
09 19:21:21 2013 +0200
+++ b/src/org/openbravo/erpCommon/ad_reports/ReportProductMovement.java Thu May
09 15:56:54 2013 +0200
@@ -54,6 +54,7 @@
String strmAttributesetinstanceId =
vars.getGlobalVariable("inpmAttributeSetInstanceId",
"ReportProductMovement|M_AttributeSetInstance_Id", "");
String strInout = vars.getGlobalVariable("inpInout",
"ReportProductMovement|inout", "-1");
+ String strReturn = vars.getGlobalVariable("inpReturn",
"ReportProductMovement|return", "-1");
String strInventory = vars.getGlobalVariable("inpInventory",
"ReportProductMovement|inventory", "-1");
String strMovement = vars.getGlobalVariable("inpMovement",
"ReportProductMovement|movement",
@@ -63,8 +64,8 @@
String strInternalConsumption =
vars.getGlobalVariable("inpInternalConsumption",
"ReportProductMovement|internalConsumption", "-1");
printPageDataSheet(response, vars, strDateFrom, strDateTo,
strcBpartnerId, strmProductId,
- strInout, strInventory, strMovement, strProduction,
strmAttributesetinstanceId,
- strInternalConsumption);
+ strInout, strReturn, strInventory, strMovement, strProduction,
+ strmAttributesetinstanceId, strInternalConsumption);
} else if (vars.commandIn("DIRECT")) {
String strDateFrom = vars.getGlobalVariable("inpDateFrom",
"ReportProductMovement|dateFrom",
"");
@@ -76,6 +77,7 @@
String strmAttributesetinstanceId =
vars.getGlobalVariable("inpmAttributeSetInstanceId",
"ReportProductMovement|M_AttributeSetInstance_Id", "");
String strInout = vars.getGlobalVariable("inpInout",
"ReportProductMovement|inout", "");
+ String strReturn = vars.getGlobalVariable("inpReturn",
"ReportProductMovement|return", "");
String strInventory = vars.getGlobalVariable("inpInventory",
"ReportProductMovement|inventory", "");
String strMovement = vars.getGlobalVariable("inpMovement",
"ReportProductMovement|movement",
@@ -86,8 +88,8 @@
"ReportProductMovement|internalConsumption", "");
setHistoryCommand(request, "DIRECT");
printPageDataSheet(response, vars, strDateFrom, strDateTo,
strcBpartnerId, strmProductId,
- strInout, strInventory, strMovement, strProduction,
strmAttributesetinstanceId,
- strInternalConsumption);
+ strInout, strReturn, strInventory, strMovement, strProduction,
+ strmAttributesetinstanceId, strInternalConsumption);
} else if (vars.commandIn("FIND")) {
String strDateFrom = vars.getRequestGlobalVariable("inpDateFrom",
"ReportProductMovement|dateFrom");
@@ -99,6 +101,7 @@
String strmAttributesetinstanceId = vars.getRequestGlobalVariable(
"inpmAttributeSetInstanceId",
"ReportProductMovement|M_AttributeSetInstance_Id");
String strInout = vars.getRequestGlobalVariable("inpInout",
"ReportProductMovement|inout");
+ String strReturn = vars.getRequestGlobalVariable("inpReturn",
"ReportProductMovement|return");
String strInventory = vars.getRequestGlobalVariable("inpInventory",
"ReportProductMovement|inventory");
String strMovement = vars.getRequestGlobalVariable("inpMovement",
@@ -109,17 +112,17 @@
"ReportProductMovement|internalConsumption");
setHistoryCommand(request, "DIRECT");
printPageDataSheet(response, vars, strDateFrom, strDateTo,
strcBpartnerId, strmProductId,
- strInout, strInventory, strMovement, strProduction,
strmAttributesetinstanceId,
- strInternalConsumption);
+ strInout, strReturn, strInventory, strMovement, strProduction,
+ strmAttributesetinstanceId, strInternalConsumption);
} else
pageError(response);
}
private void printPageDataSheet(HttpServletResponse response,
VariablesSecureApp vars,
String strDateFrom, String strDateTo, String strcBpartnerId, String
strmProductId,
- String strInout, String strInventory, String strMovement, String
strProduction,
- String strmAttributesetinstanceId, String strInternalConsumption) throws
IOException,
- ServletException {
+ String strInout, String strReturn, String strInventory, String
strMovement,
+ String strProduction, String strmAttributesetinstanceId, String
strInternalConsumption)
+ throws IOException, ServletException {
if (log4j.isDebugEnabled())
log4j.debug("Output: dataSheet");
response.setContentType("text/html; charset=UTF-8");
@@ -130,7 +133,8 @@
ReportProductMovementData[] data2 = null;
ReportProductMovementData[] data3 = null;
ReportProductMovementData[] data4 = null;
- String discard[] = { "discard", "discard", "discard", "discard", "discard"
};
+ ReportProductMovementData[] data5 = null;
+ String discard[] = { "discard", "discard", "discard", "discard",
"discard", "discard" };
if (strDateFrom.equals("") && strDateTo.equals("")) {
strDateTo = DateTimeData.today(this);
strDateFrom = DateTimeData.weekBefore(this);
@@ -141,7 +145,7 @@
Utility.getContext(this, vars, "#User_Client",
"ReportProductMovement"),
Utility.getContext(this, vars, "#AccessibleOrgTree",
"ReportProductMovement"),
strDateFrom, DateTimeData.nDaysAfter(this, strDateTo, "1"),
strcBpartnerId,
- strmProductId, strmAttributesetinstanceId);
+ strmProductId, strmAttributesetinstanceId, "N");
if (data == null || data.length == 0) {
discard[0] = "selEliminar1";
data = ReportProductMovementData.set();
@@ -150,6 +154,22 @@
discard[0] = "selEliminar1";
data = ReportProductMovementData.set();
}
+
+ if (strReturn.equals("-1")) {
+ data5 = ReportProductMovementData.select(this, vars.getLanguage(),
+ Utility.getContext(this, vars, "#User_Client",
"ReportProductMovement"),
+ Utility.getContext(this, vars, "#AccessibleOrgTree",
"ReportProductMovement"),
+ strDateFrom, DateTimeData.nDaysAfter(this, strDateTo, "1"),
strcBpartnerId,
+ strmProductId, strmAttributesetinstanceId, "Y");
+ if (data5 == null || data5.length == 0) {
+ discard[5] = "selEliminar6";
+ data5 = ReportProductMovementData.set();
+ }
+ } else {
+ discard[5] = "selEliminar6";
+ data5 = ReportProductMovementData.set();
+ }
+
if (strInventory.equals("-1")) {
data1 = ReportProductMovementData.selectInventory(this,
Utility.getContext(this, vars, "#User_Client",
"ReportProductMovement"),
@@ -212,11 +232,13 @@
discard[2] = "selEliminar3";
discard[3] = "selEliminar4";
discard[4] = "selEliminar5";
+ discard[5] = "selEliminar6";
data = ReportProductMovementData.set();
data1 = ReportProductMovementData.set();
data2 = ReportProductMovementData.set();
data3 = ReportProductMovementData.set();
data4 = ReportProductMovementData.set();
+ data5 = ReportProductMovementData.set();
}
xmlDocument = xmlEngine.readXmlTemplate(
"org/openbravo/erpCommon/ad_reports/ReportProductMovement",
discard).createXmlDocument();
@@ -277,6 +299,7 @@
xmlDocument.setParameter("productDescription",
ReportProductMovementData.selectMproduct(this, strmProductId));
xmlDocument.setParameter("inout", strInout);
+ xmlDocument.setParameter("return", strReturn);
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and
their applications. This 200-page book is written by three acclaimed
leaders in the field. The early access version is available now.
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits