Iniit
This commit is contained in:
@@ -0,0 +1,378 @@
|
||||
var SPRL;
|
||||
(function (SPRL) {
|
||||
let Apps;
|
||||
(function (Apps) {
|
||||
let Sap;
|
||||
(function (Sap) {
|
||||
let Components;
|
||||
(function (Components) {
|
||||
class SapReports extends Unibase.Platform.Core.BaseComponent {
|
||||
cssFiles() {
|
||||
return ['libs/tabulator/css/tabulator.min.css', 'libs/tabulator-tables/css/bootstrap/tabulator_bootstrap4.min.css'];
|
||||
}
|
||||
jsFiles() {
|
||||
return ["apps/sprl/managers/sap/sapreportmanager.js", "platform/forms/components/formviewer/formviewer.js", 'libs/parsley/parsley.min.js', 'apps/sprl/components/sap/sapreports.widget.js', 'platform/core/infos/status.js', 'libs/jquery/ui/jquery-ui.min.js', "libs/tabulator-tables/js/tabulator.min.js"];
|
||||
}
|
||||
html(id, containerid) {
|
||||
return `<div class="col-lg-12"><div class="Border"><div id="" class="card"><div class="clear" id="div_validationSummary"></div>
|
||||
<div class="card-header card-header-action"><strong class="" id="hf-widget-title">SAP Reports</strong><div id="div_ConnectedUsers" class="row hidden col-4"><label>User : </label><div class="floating-label-from-group col-sm-10"><select id="txtAutocomplete_User" class="form-control value-control" style="width:100%;" placeholder="Select" data-placeholder="Select" data-label="User" ></select><input type="hidden" value="0" id="hfAutocomplete_User"/></div></div><div class="row" id="div_fromdate"><label class="mt-5">From Date : </label><div class="floatin-label-from-group ">
|
||||
<input type="date" id="txt_fromdate" class="form-control floating-label-control datepicker-input hasDatepicker required" data-date-format="dd/MM/yyyy" data-isdynamic="false" placeholder="From Date *" data-placeholder="dd/mm/yyyy" data-label="From Date *">
|
||||
|
||||
</div><input type="hidden" id="hf_FromDate"></div><div class="row" id="div_todate"><label class="mt-5">To Date : </label><div class="floatin-label-from-group ">
|
||||
<input type="date" id="txt_todate" class="form-control floating-label-control datepicker-input hasDatepicker required" data-date-format="dd/MM/yyyy" data-isdynamic="false" placeholder="To Date *" data-placeholder="dd/mm/yyyy" data-label="From Date *">
|
||||
|
||||
</div><input type="hidden" id="hf_FromDate"><input type="hidden" id="hf_ToDate"></div></div><div class="card-body pa-0" id="div_sapreportbody"><ul class="list-group" id="div_sapReports"></ul></div></div></div>`;
|
||||
}
|
||||
loadUsers() {
|
||||
var url = _appsettings.server_url() + '/apis/v4/bizgaze/sprl/contacts/getmappingcontacts';
|
||||
AutoCompleteHelper.getHelper().Create($("#txtAutocomplete_User"), "#hfAutocomplete_User", url, function (response) {
|
||||
var data = response;
|
||||
});
|
||||
}
|
||||
load(id, containerid, callback) {
|
||||
var instance = this;
|
||||
if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length == 0) {
|
||||
$("#div_ConnectedUsers").removeClass("hidden");
|
||||
instance.loadUsers();
|
||||
}
|
||||
else {
|
||||
$("#div_ConnectedUsers").addClass("hidden");
|
||||
}
|
||||
$("#txt_fromdate").val(moment().format('YYYY-MM-DD'));
|
||||
$("#txt_todate").val(moment().format('YYYY-MM-DD'));
|
||||
instance.loadSapReports();
|
||||
}
|
||||
init(containerid) {
|
||||
var instance = this;
|
||||
instance.fileCacheHelper.loadJsFiles(["apps/sprl/components/sap/sapreports.js"], function () {
|
||||
instance.navigationHelper.loadSection(0, containerid, SPRL.Apps.Sap.Components.SapReports.Instance(), null, null);
|
||||
if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length == 0) {
|
||||
$("#div_ConnectedUsers").removeClass("hidden");
|
||||
instance.loadUsers();
|
||||
}
|
||||
else {
|
||||
$("#div_ConnectedUsers").addClass("hidden");
|
||||
}
|
||||
instance.loadSapReports();
|
||||
});
|
||||
}
|
||||
loadForm(FormId, Pk_Value, AppConfigurationId, Callback, ElementId) { }
|
||||
loadSapReports() {
|
||||
var html = "";
|
||||
var setting = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().settings.find(x => x.settingName == "sapcin");
|
||||
var sapcin = setting != undefined ? setting.settingValue : "";
|
||||
var contactName = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().name;
|
||||
var isAdmin = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().isAdmin;
|
||||
if (sapcin != "") {
|
||||
var option = new Option(contactName + "(" + sapcin + ")", sapcin, true);
|
||||
$("#txtAutocomplete_User").append(option);
|
||||
}
|
||||
if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length > 0)
|
||||
sapcin = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_sapcin").Value.toString();
|
||||
else
|
||||
sapcin = $("#txtAutocomplete_User").val() != null ? $("#txtAutocomplete_User").val().toString() : "0";
|
||||
if ((sapcin == "" || sapcin == "0") && !isAdmin) {
|
||||
$("#div_todate").addClass("hidden");
|
||||
$("#div_fromdate").addClass("hidden");
|
||||
$("#div_sapreportbody").removeClass("pa-0");
|
||||
html = `<div class="text-center"><strong class="col-sm-10">Please Assign SAPCIN</strong></div>`;
|
||||
}
|
||||
else {
|
||||
$("#div_todate").removeClass("hidden");
|
||||
$("#div_fromdate").removeClass("hidden");
|
||||
$("#div_sapreportbody").addClass("pa-0");
|
||||
html = `<li class="list-group-item added-row"><span class="col-sm-10">Customer Limit</span><a class="btn btn-primary pull-right col-sm-2" href="javascript:;" onclick="SPRL.Apps.Sap.Components.SapReports.Instance().executeSapCustomerLimit();" id="a_customerLimit">Get Report Data</a></li><li class="list-group-item"><span class="col-sm-10">Customer OverDue</span><a class="btn btn-primary pull-right col-sm-2" href="javascript:;" onclick="SPRL.Apps.Sap.Components.SapReports.Instance().executeSapCustomerOverDue();" id="a_customerOverDue">Get Report Data</a></li><li class="list-group-item"><span class="col-sm-10">Debit Note</span><a class="btn btn-primary pull-right col-sm-2 a_debitNote" href="javascript:;" onclick="SPRL.Apps.Sap.Components.SapReports.Instance().executeSapDebitCreditNote('DR');" id="a_debitNote">Get Report Data</a></li><li class="list-group-item"><span class="col-sm-10">Credit Note</span><a class="btn btn-primary pull-right col-sm-2 a_creditNote" href="javascript:;" onclick="SPRL.Apps.Sap.Components.SapReports.Instance().executeSapDebitCreditNote('DG');" id="a_creditNote">Get Report Data</a></li><li class="list-group-item"><span class="col-sm-10">Sales Report</span><a class="btn btn-primary pull-right col-sm-2" href="javascript:;" onclick="SPRL.Apps.Sap.Components.SapReports.Instance().executeSapSalesReport();" id="a_salesReport">Get Report Data</a></li><li class="list-group-item hidden"><span class="col-sm-10">Stock Api</span><a class="btn btn-primary pull-right col-sm-2" href="javascript:;" onclick="SPRL.Apps.Sap.Components.SapReports.Instance().executeSapStockApi();" id="a_stock">Get Report Data</a></li><li class="list-group-item"><span class="col-sm-10">Customer OutStanding</span><a class="btn btn-primary pull-right col-sm-2" href="javascript:;" onclick="SPRL.Apps.Sap.Components.SapReports.Instance().executeCustomerOutStanding();" id="a_customerOutStanding">Get Report Data</a></li><li class="list-group-item"><span class="col-sm-10">Account Statement</span><a class="btn btn-primary pull-right col-sm-2" href="javascript:;" onclick="SPRL.Apps.Sap.Components.SapReports.Instance().executeAccountStatement();" id="a_accountStatement">Get Report Data</a></li>`;
|
||||
}
|
||||
$("#div_sapReports").html(html);
|
||||
}
|
||||
showErrorMessage(message) {
|
||||
$(".divsapReports").html(message);
|
||||
}
|
||||
executeSapSalesReport(sapcin, fromdate, todate) {
|
||||
var fromDate = $("#txt_fromdate").val();
|
||||
var toDate = $("#txt_todate").val();
|
||||
var instance = this;
|
||||
if (fromdate == undefined) {
|
||||
fromdate = fromDate != "" ? fromDate : new Date();
|
||||
}
|
||||
if (todate == undefined) {
|
||||
todate = toDate != "" ? toDate : new Date();
|
||||
}
|
||||
var fdate = moment.utc(fromdate).format("YYYYMMDD");
|
||||
var tdate = moment.utc(todate).format("YYYYMMDD");
|
||||
instance.fileCacheHelper.loadJsFiles(["apps/sprl/managers/sap/sapreportmanager.js", 'apps/sprl/components/sap/sapreports.widget.js'], null);
|
||||
if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length == 0)
|
||||
sapcin = $("#txtAutocomplete_User").val() != null ? $("#txtAutocomplete_User").val() : "0";
|
||||
else
|
||||
sapcin = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_sapcin").Value.toString();
|
||||
if (sapcin == "0") {
|
||||
MessageHelper.Instance().showError("Please Assign Sap Cin", "div_validationSummary");
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
$("#a_salesReport").text("Getting...");
|
||||
SPRL.Apps.Sap.Managers.SapReportManager.Instance().getSalesReport(sapcin, fdate, tdate).then(function (response) {
|
||||
instance.navigationHelper.popup(0, '', SPRL.Apps.Sap.Components.SapReportWidget.Instance(), null, Unibase.Platform.Helpers.Size.Large);
|
||||
$("#formName").text("Sales Report");
|
||||
if (response.status == Unibase.Data.Status.Success) {
|
||||
response.result = JSON.parse(response.result);
|
||||
var table = new Tabulator(".divsapReports", {
|
||||
columns: [
|
||||
{ title: "Invoice No.", field: "VBELN", visible: true, headerSort: false, },
|
||||
{ title: "Invoice date (creation of inv)", field: "FKDAT", visible: true, headerSort: false, },
|
||||
{ title: "Login ID", field: "KUNRG", visible: true, headerSort: false, },
|
||||
{ title: "Customer name", field: "NAME1", visible: true, headerSort: false, },
|
||||
{ title: "Material Code", field: "MATNR", visible: true, headerSort: false, },
|
||||
{ title: "Material description", field: "MAKTX", visible: true, headerSort: false, },
|
||||
{ title: "Quantity (in sets)", field: "FKIMG", visible: true, headerSort: false, },
|
||||
{ title: "Net Value", field: "BASICVALUE", visible: true, headerSort: false, },
|
||||
{ title: "Tax", field: "ST", visible: true, headerSort: false, },
|
||||
{ title: "Total Value", field: "TOTALVAL", visible: true, headerSort: false, }
|
||||
],
|
||||
layout: "fitColumns",
|
||||
columnMinWidth: 100,
|
||||
movableColumns: true,
|
||||
}).setData(response.result);
|
||||
}
|
||||
else {
|
||||
$("#downloadDoc").hide();
|
||||
if (response.code.toString() == "NotFound")
|
||||
instance.showErrorMessage("Data not found in selected period");
|
||||
else
|
||||
instance.showErrorMessage(response.message);
|
||||
}
|
||||
$("#a_salesReport").text("Get Report Data");
|
||||
});
|
||||
}
|
||||
}
|
||||
executeSapCustomerOverDue(sapcin, date) {
|
||||
var instance = this;
|
||||
var fromDate = $("#txt_fromdate").val();
|
||||
if (date == undefined) {
|
||||
date = fromDate != "" ? fromDate : new Date();
|
||||
}
|
||||
date = moment.utc(date).format("YYYYMMDD");
|
||||
instance.fileCacheHelper.loadJsFiles(["apps/sprl/managers/sap/sapreportmanager.js", 'apps/sprl/components/sap/sapreports.widget.js'], null);
|
||||
if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length == 0)
|
||||
sapcin = $("#txtAutocomplete_User").val() != null ? $("#txtAutocomplete_User").val() : "0";
|
||||
else
|
||||
sapcin = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_sapcin").Value.toString();
|
||||
if (sapcin == "0") {
|
||||
MessageHelper.Instance().showError("Please Assign Sap Cin", "div_validationSummary");
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
$("#a_customerOverDue").text("Getting...");
|
||||
SPRL.Apps.Sap.Managers.SapReportManager.Instance().getCustomerOverDue(sapcin, date).then(function (response) {
|
||||
instance.navigationHelper.popup(0, '', SPRL.Apps.Sap.Components.SapReportWidget.Instance(), null, Unibase.Platform.Helpers.Size.Large);
|
||||
$("#formName").text("Customer Over Due");
|
||||
if (response.status == Unibase.Data.Status.Success) {
|
||||
var json = JSON.parse(response.result);
|
||||
var html = `<li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Login ID</strong><span class="col-sm-6 spn_value">` + json.KUNNR + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Name of Customer</strong><span class="col-sm-6 spn_value">` + json.NAME1 + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Town</strong><span class="col-sm-6 spn_value">` + json.CITY + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Country</strong><span class="col-sm-6 spn_value">` + json.LANDX + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Payment not Due</strong><span class="col-sm-6 spn_value">` + json.NOT_DUE + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">01-30 Days</strong><span class="col-sm-6 spn_value">` + json.FOR_1_30 + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">31-60 Days</strong><span class="col-sm-6 spn_value">` + json.FOR_31_60 + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">61-90 Days</strong><span class="col-sm-6 spn_value">` + json.FOR_61_90 + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">91-180 Days</strong><span class="col-sm-6 spn_value">` + json.FOR_91_180 + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">181-365 Days</strong><span class="col-sm-6 spn_value">` + json.FOR_181_365 + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Over 365 Days</strong><span class="col-sm-6 spn_value">` + json.OVER_365 + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Advances</strong><span class="col-sm-6 spn_value">` + json.ADVANCES + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Net Over Due</strong><span class="col-sm-6 spn_value">` + json.NET + `</span></div></li>`;
|
||||
$(".divsapReports").html(html);
|
||||
}
|
||||
else {
|
||||
$("#downloadDoc").hide();
|
||||
if (response.code.toString() == "NotFound")
|
||||
instance.showErrorMessage("Data not found in selected period");
|
||||
else
|
||||
instance.showErrorMessage(response.message);
|
||||
}
|
||||
$("#a_customerOverDue").text("Get Report Data");
|
||||
});
|
||||
}
|
||||
}
|
||||
executeSapCustomerLimit(sapcin) {
|
||||
var instance = this;
|
||||
instance.fileCacheHelper.loadJsFiles(["apps/sprl/managers/sap/sapreportmanager.js", 'apps/sprl/components/sap/sapreports.widget.js'], null);
|
||||
if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length == 0)
|
||||
sapcin = $("#txtAutocomplete_User").val() != null ? $("#txtAutocomplete_User").val() : "0";
|
||||
else
|
||||
sapcin = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_sapcin").Value.toString();
|
||||
if (sapcin == "0") {
|
||||
MessageHelper.Instance().showError("Please Assign Sap Cin", "div_validationSummary");
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
$("#a_customerLimit").text("Getting...");
|
||||
SPRL.Apps.Sap.Managers.SapReportManager.Instance().getCustomerLimit(sapcin).then(function (response) {
|
||||
instance.navigationHelper.popup(0, '', SPRL.Apps.Sap.Components.SapReportWidget.Instance(), null, Unibase.Platform.Helpers.Size.Large);
|
||||
$("#formName").text("Credit limit");
|
||||
if (response.status == Unibase.Data.Status.Success) {
|
||||
var json = JSON.parse(response.result);
|
||||
var usedCreditLimit = 0;
|
||||
usedCreditLimit = Number(json.SKFOR) * 100 / json.KLIMK;
|
||||
var html = `<li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Login ID</strong><span id="spn_kunnr" class="col-sm-6 spn_value">` + json.KUNNR + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Credit limit (Rs.)</strong><span id="spn_klimk" class="col-sm-6 spn_value">` + json.KLIMK + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Credit limit used %</strong><span class="col-sm-6 spn_value" id="spn_skForKlimk">` + usedCreditLimit.toFixed(2) + `(%)</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Credit Limit used (Rs.)</strong><span class="col-sm-6 spn_value" id="spn_SkFor">` + json.SKFOR + `</span></div></li>`;
|
||||
$(".divsapReports").html(html);
|
||||
}
|
||||
else {
|
||||
$("#downloadDoc").hide();
|
||||
if (response.code.toString() == "NotFound")
|
||||
instance.showErrorMessage("Data not found in selected period");
|
||||
else
|
||||
instance.showErrorMessage(response.message);
|
||||
}
|
||||
$("#a_customerLimit").text("Get Report Data");
|
||||
});
|
||||
}
|
||||
}
|
||||
executeSapDebitCreditNote(blart) {
|
||||
var instance = this;
|
||||
var fromDate = $("#txt_fromdate").val();
|
||||
var toDate = $("#txt_todate").val();
|
||||
var fromdate = fromDate != "" ? fromDate : new Date();
|
||||
var todate = toDate != "" ? toDate : new Date();
|
||||
var sapcin = "";
|
||||
var fdate = moment.utc(fromdate).format("YYYYMMDD");
|
||||
var tdate = moment.utc(todate).format("YYYYMMDD");
|
||||
instance.fileCacheHelper.loadJsFiles(["apps/sprl/managers/sap/sapreportmanager.js", 'apps/sprl/components/sap/sapreports.widget.js'], null);
|
||||
if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length == 0)
|
||||
sapcin = $("#txtAutocomplete_User").val() != null ? $("#txtAutocomplete_User").val().toString() : "0";
|
||||
else
|
||||
sapcin = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_sapcin").Value.toString();
|
||||
blart = blart == undefined ? "DR" : blart;
|
||||
if (sapcin == "0") {
|
||||
MessageHelper.Instance().showError("Please Assign Sap Cin", "div_validationSummary");
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
var formName = "Debit Note";
|
||||
if (blart == "DG") {
|
||||
formName = "Credit Note";
|
||||
$("#a_creditNote").text("Getting...");
|
||||
}
|
||||
else
|
||||
$("#a_debitNote").text("Getting...");
|
||||
SPRL.Apps.Sap.Managers.SapReportManager.Instance().getDebitCreditNote(sapcin, fdate, tdate, blart).then(function (response) {
|
||||
instance.navigationHelper.popup(0, '', SPRL.Apps.Sap.Components.SapReportWidget.Instance(), null, Unibase.Platform.Helpers.Size.Large);
|
||||
$("#formName").text(formName);
|
||||
if (response.status == Unibase.Data.Status.Success) {
|
||||
var json = JSON.parse(response.result);
|
||||
var html = `<li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Login ID</strong><span class="col-sm-6 spn_value">` + json.KUNNR + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Document No.</strong><span class="col-sm-6 spn_value">` + json.BELNR + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Date</strong><span class="col-sm-6 spn_value">` + json.AUGDT + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Reference Doc No.</strong><span class="col-sm-6 spn_value">` + json.ZUONR + `</span></div></li><li class="list-group-item added-item"><div class="row"><strong class="col-sm-6 spn_id">Amount</strong><span class="col-sm-6 spn_value">` + json.WRBTR + `</span></div></div></li>`;
|
||||
$(".divsapReports").html(html);
|
||||
}
|
||||
else {
|
||||
$("#downloadDoc").hide();
|
||||
if (response.code.toString() == "NotFound")
|
||||
instance.showErrorMessage("Data not found in selected period");
|
||||
else
|
||||
instance.showErrorMessage(response.message);
|
||||
}
|
||||
$("#a_creditNote").text("Get Report Data");
|
||||
$("#a_debitNote").text("Get Report Data");
|
||||
});
|
||||
}
|
||||
}
|
||||
executeCustomerOutStanding(sapcin) {
|
||||
var instance = this;
|
||||
instance.fileCacheHelper.loadJsFiles(["apps/sprl/managers/sap/sapreportmanager.js", 'apps/sprl/components/sap/sapreports.widget.js'], null);
|
||||
if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length == 0)
|
||||
sapcin = $("#txtAutocomplete_User").val() != null ? $("#txtAutocomplete_User").val() : "0";
|
||||
else
|
||||
sapcin = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_sapcin").Value.toString();
|
||||
if (sapcin == "0") {
|
||||
MessageHelper.Instance().showError("Please Assign Sap Cin", "div_validationSummary");
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
$("#a_customerOutStanding").text("Getting...");
|
||||
SPRL.Apps.Sap.Managers.SapReportManager.Instance().getCustomerOutStanding(sapcin).then(function (response) {
|
||||
instance.navigationHelper.popup(0, '', SPRL.Apps.Sap.Components.SapReportWidget.Instance(), null, Unibase.Platform.Helpers.Size.Large);
|
||||
$("#formName").text("Outstanding Statement");
|
||||
if (response.status == Unibase.Data.Status.Success) {
|
||||
response.result = JSON.parse(response.result);
|
||||
var table = new Tabulator(".divsapReports", {
|
||||
columns: [
|
||||
{ title: "Login ID", field: "ZLOGINID", visible: true },
|
||||
{ title: "Document Date", field: "ZDOCDATE", visible: true },
|
||||
{ title: "Invoice No.", field: "ZEXINVNO", visible: true },
|
||||
{ title: "Document Type", field: "ZTYPE", visible: true },
|
||||
{ title: "SAP Invoice No.", field: "BELNR", visible: true },
|
||||
{ title: "Voucher No.", field: "", visible: true },
|
||||
{ title: "Due Date", field: "ZNETDUEDATE", visible: true },
|
||||
{ title: "Amount", field: "ZAMOUNT", visible: true },
|
||||
{ title: "Remarks", field: "ZTEXT", visible: true }
|
||||
],
|
||||
layout: "fitColumns",
|
||||
columnMinWidth: 100,
|
||||
movableColumns: true,
|
||||
}).setData(response.result);
|
||||
}
|
||||
else {
|
||||
$("#downloadDoc").hide();
|
||||
if (response.code.toString() == "NotFound")
|
||||
instance.showErrorMessage("Data not found in selected period");
|
||||
else
|
||||
instance.showErrorMessage(response.message);
|
||||
}
|
||||
$("#a_customerOutStanding").text("Get Report Data");
|
||||
});
|
||||
}
|
||||
}
|
||||
executeAccountStatement(sapcin, fromdate, todate) {
|
||||
var instance = this;
|
||||
instance.fileCacheHelper.loadJsFiles(["apps/sprl/managers/sap/sapreportmanager.js", 'apps/sprl/components/sap/sapreports.widget.js'], null);
|
||||
if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length == 0)
|
||||
sapcin = $("#txtAutocomplete_User").val() != null ? $("#txtAutocomplete_User").val() : "0";
|
||||
else
|
||||
sapcin = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_sapcin").Value.toString();
|
||||
var fromDate = $("#txt_fromdate").val();
|
||||
var toDate = $("#txt_todate").val();
|
||||
if (fromdate == undefined) {
|
||||
fromdate = fromDate != "" ? fromDate : new Date();
|
||||
}
|
||||
if (todate == undefined) {
|
||||
todate = toDate != "" ? toDate : new Date();
|
||||
}
|
||||
var fdate = moment.utc(fromdate).format("YYYYMMDD");
|
||||
var tdate = moment.utc(todate).format("YYYYMMDD");
|
||||
if (sapcin == "0") {
|
||||
MessageHelper.Instance().showError("Please Assign Sap Cin", "div_validationSummary");
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
$("#a_accountStatement").text("Getting...");
|
||||
SPRL.Apps.Sap.Managers.SapReportManager.Instance().getAccountStatement(sapcin, fdate, tdate).then(function (response) {
|
||||
instance.navigationHelper.popup(0, '', SPRL.Apps.Sap.Components.SapReportWidget.Instance(), null, Unibase.Platform.Helpers.Size.Large);
|
||||
$("#formName").text("Account Statement");
|
||||
if (response.status == Unibase.Data.Status.Success) {
|
||||
response.result = JSON.parse(response.result);
|
||||
var table = new Tabulator(".divsapReports", {
|
||||
columns: [
|
||||
{ title: "Voucher No.", field: "BELNR", visible: true },
|
||||
{ title: "Voucher Date", field: "BUDAT", visible: true },
|
||||
{ title: "Voucher Type", field: "BLART", visible: true },
|
||||
{ title: "Debit Amount", field: "DMBTR", visible: true },
|
||||
{ title: "Credit Amount", field: "WRBTR", visible: true },
|
||||
{ title: "Cheque No.", field: "ZUONR", visible: true },
|
||||
{ title: "Invoice No.", field: "XBLNR", visible: true },
|
||||
{ title: "Remarks", field: "SGTEXT", visible: true },
|
||||
],
|
||||
layout: "fitColumns",
|
||||
columnMinWidth: 100,
|
||||
movableColumns: true,
|
||||
}).setData(response.result);
|
||||
}
|
||||
else {
|
||||
$("#downloadDoc").hide();
|
||||
if (response.code.toString() == "NotFound")
|
||||
instance.showErrorMessage("Data not found in selected period");
|
||||
else
|
||||
instance.showErrorMessage(response.message);
|
||||
}
|
||||
$("#a_accountStatement").text("Get Report Data");
|
||||
});
|
||||
}
|
||||
}
|
||||
static Instance() {
|
||||
if (this.instance === undefined) {
|
||||
this.instance = new SapReports();
|
||||
}
|
||||
return this.instance;
|
||||
}
|
||||
}
|
||||
Components.SapReports = SapReports;
|
||||
})(Components = Sap.Components || (Sap.Components = {}));
|
||||
})(Sap = Apps.Sap || (Apps.Sap = {}));
|
||||
})(Apps = SPRL.Apps || (SPRL.Apps = {}));
|
||||
})(SPRL || (SPRL = {}));
|
||||
+1
File diff suppressed because one or more lines are too long
+8
File diff suppressed because one or more lines are too long
@@ -0,0 +1,58 @@
|
||||
var SPRL;
|
||||
(function (SPRL) {
|
||||
let Apps;
|
||||
(function (Apps) {
|
||||
let Sap;
|
||||
(function (Sap) {
|
||||
let Components;
|
||||
(function (Components) {
|
||||
class SapReportWidget extends Unibase.Platform.Core.BaseComponent {
|
||||
cssFiles() {
|
||||
return [];
|
||||
}
|
||||
jsFiles() {
|
||||
return ["apps/sprl/managers/sap/sapreportmanager.js", "platform/forms/components/formviewer/formviewer.js", 'libs/parsley/parsley.min.js'];
|
||||
}
|
||||
html(id, containerid) {
|
||||
return `<form id="Unibase_sapReports" default="" data-validate="parsley" data-isdynamic="false"><div class="b-b bg-white header"><strong id="formName" class="text-dark col-sm-11"></strong><a id="downloadDoc" href="javascript:;"><i class="fa fa-download"></i></a><a class="btn btn-sm ml-auto"><i class="ti-help-alt" title="help" href="javascript:;" target="_blank"></i></a></div><div data-simplebar class="simple-scroll-bar scrollable service-provider-body"><div id="Unibase_ValidationSummary" class="clear mt-10"></div><div class="card"><div class="card-body"><ul class="divsapReports list-group" id="divsapReports"></ul></div></div></div><div class="bg-white footer"><a class="btn btn-light btn-sm btn-center mr-auto btn-close" id="btnClose">Close</a></div></form>`;
|
||||
}
|
||||
load(id, containerid, callback) {
|
||||
var instance = this;
|
||||
$("#downloadDoc").click(function () {
|
||||
var formName = $("#formName").text();
|
||||
if (formName == "Sales Report" || formName == "Outstanding Statement" || formName == "Account Statement")
|
||||
instance.downloadExcel();
|
||||
else
|
||||
instance.downloadPdf();
|
||||
});
|
||||
}
|
||||
loadForm(FormId, Pk_Value, AppConfigurationId, Callback, ElementId) {
|
||||
}
|
||||
downloadExcel() {
|
||||
var table = Tabulator.prototype.findTable('#divsapReports')[0];
|
||||
table.download("csv", $("#formName").text() + ".csv");
|
||||
}
|
||||
downloadPdf() {
|
||||
var html = `<table class="table">` +
|
||||
`<tbody>`;
|
||||
$(".divsapReports").find(".added-item").each(function () {
|
||||
var id = $(this).find(".spn_id").text();
|
||||
var value = $(this).find(".spn_value").text();
|
||||
html += `<tr><td><strong>` + id + `</strong></td><td>` + value + `</td></tr>`;
|
||||
});
|
||||
html += `</tbody></table>`;
|
||||
var newWin = window.open('', 'Print-Window');
|
||||
newWin.document.write('<html><body onload="window.print()">' + html + '</body></html>');
|
||||
newWin.document.title = $("#formName").text();
|
||||
newWin.document.close();
|
||||
setTimeout(function () { newWin.close(); }, 10);
|
||||
}
|
||||
static Instance() {
|
||||
return new SapReportWidget();
|
||||
}
|
||||
}
|
||||
Components.SapReportWidget = SapReportWidget;
|
||||
})(Components = Sap.Components || (Sap.Components = {}));
|
||||
})(Sap = Apps.Sap || (Apps.Sap = {}));
|
||||
})(Apps = SPRL.Apps || (SPRL.Apps = {}));
|
||||
})(SPRL || (SPRL = {}));
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"sapreports.widget.js","sourceRoot":"","sources":["sapreports.widget.ts"],"names":[],"mappings":"AACA,IAAU,IAAI,CA8Db;AA9DD,WAAU,IAAI;IACV,IAAiB,IAAI,CA4DpB;IA5DD,WAAiB,IAAI;QACjB,IAAiB,GAAG,CA0DnB;QA1DD,WAAiB,GAAG;YAChB,IAAiB,UAAU,CAwD1B;YAxDD,WAAiB,UAAU;gBACvB,MAAa,eAAgB,SAAQ,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa;oBACpE,QAAQ;wBACJ,OAAO,EAAE,CAAC;oBACd,CAAC;oBACD,OAAO;wBACH,OAAO,CAAC,4CAA4C,EAAE,oDAAoD,EAAE,6BAA6B,CAAC,CAAC;oBAC/I,CAAC;oBACD,IAAI,CAAC,EAAE,EAAE,WAAW;wBAChB,OAAO,uvBAAuvB,CAAC;oBACnwB,CAAC;oBACD,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,QAAQ;wBAC1B,IAAI,QAAQ,GAAG,IAAI,CAAC;wBACpB,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC;4BACpB,IAAI,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC;4BACrC,IAAI,QAAQ,IAAI,cAAc,IAAI,QAAQ,IAAE,uBAAuB,IAAG,QAAQ,IAAE,mBAAmB;gCAC/F,QAAQ,CAAC,aAAa,EAAE,CAAC;;gCAE7B,QAAQ,CAAC,WAAW,EAAE,CAAC;wBAC3B,CAAC,CAAC,CAAC;oBACP,CAAC;oBAED,QAAQ,CAAC,MAAc,EAAE,QAAa,EAAE,kBAA0B,EAAE,QAAa,EAAE,SAAc;oBAEjG,CAAC;oBACD,aAAa;wBACT,IAAI,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC/D,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,CAAC;oBAC1D,CAAC;oBACD,WAAW;wBAGP,IAAI,IAAI,GAAG,uBAAuB;4BAE9B,SAAS,CAAC;wBACd,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC;4BACzC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;4BACxC,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;4BAC9C,IAAI,IAAI,kBAAkB,GAAG,EAAE,GAAG,oBAAoB,GAAG,KAAK,GAAG,YAAY,CAAC;wBAClF,CAAC,CAAC,CAAC;wBACH,IAAI,IAAI,kBAAkB,CAAC;wBAI3B,IAAI,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;wBAC7C,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,sCAAsC,GAAG,IAAI,GAAG,gBAAgB,CAAC,CAAC;wBAExF,MAAM,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC;wBAC9C,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;wBAExB,UAAU,CAAC,cAAc,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACpD,CAAC;oBACD,MAAM,CAAC,QAAQ;wBACX,OAAO,IAAI,eAAe,EAAE,CAAC;oBACjC,CAAC;iBACJ;gBAtDY,0BAAe,kBAsD3B,CAAA;YACL,CAAC,EAxDgB,UAAU,GAAV,cAAU,KAAV,cAAU,QAwD1B;QACL,CAAC,EA1DgB,GAAG,GAAH,QAAG,KAAH,QAAG,QA0DnB;IACL,CAAC,EA5DgB,IAAI,GAAJ,SAAI,KAAJ,SAAI,QA4DpB;AACL,CAAC,EA9DS,IAAI,KAAJ,IAAI,QA8Db"}
|
||||
+1
@@ -0,0 +1 @@
|
||||
var SPRL;(function(n){let t;(function(n){let t;(function(n){let t;(function(n){class t extends Unibase.Platform.Core.BaseComponent{cssFiles(){return[]}jsFiles(){return["apps/sprl/managers/sap/sapreportmanager.js","platform/forms/components/formviewer/formviewer.js","libs/parsley/parsley.min.js"]}html(){return`<form id="Unibase_sapReports" default="" data-validate="parsley" data-isdynamic="false"><div class="b-b bg-white header"><strong id="formName" class="text-dark col-sm-11"></strong><a id="downloadDoc" href="javascript:;"><i class="fa fa-download"></i></a><a class="btn btn-sm ml-auto"><i class="ti-help-alt" title="help" href="javascript:;" target="_blank"></i></a></div><div data-simplebar class="simple-scroll-bar scrollable service-provider-body"><div id="Unibase_ValidationSummary" class="clear mt-10"></div><div class="card"><div class="card-body"><ul class="divsapReports list-group" id="divsapReports"></ul></div></div></div><div class="bg-white footer"><a class="btn btn-light btn-sm btn-center mr-auto btn-close" id="btnClose">Close</a></div></form>`}load(){var n=this;$("#downloadDoc").click(function(){var t=$("#formName").text();t=="Sales Report"||t=="Outstanding Statement"||t=="Account Statement"?n.downloadExcel():n.downloadPdf()})}loadForm(){}downloadExcel(){var n=Tabulator.prototype.findTable("#divsapReports")[0];n.download("csv",$("#formName").text()+".csv")}downloadPdf(){var t=`<table class="table">`+`<tbody>`,n;$(".divsapReports").find(".added-item").each(function(){var n=$(this).find(".spn_id").text(),i=$(this).find(".spn_value").text();t+=`<tr><td><strong>`+n+`</strong></td><td>`+i+`</td></tr>`});t+=`</tbody></table>`;n=window.open("","Print-Window");n.document.write('<html><body onload="window.print()">'+t+"<\/body><\/html>");n.document.title=$("#formName").text();n.document.close();setTimeout(function(){n.close()},10)}static Instance(){return new t}}n.SapReportWidget=t})(t=n.Components||(n.Components={}))})(t=n.Sap||(n.Sap={}))})(t=n.Apps||(n.Apps={}))})(SPRL||(SPRL={}));
|
||||
Reference in New Issue
Block a user