Built files from Bizgaze WebServer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

sapreports.widget.js 3.6KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. var SPRL;
  2. (function (SPRL) {
  3. let Apps;
  4. (function (Apps) {
  5. let Sap;
  6. (function (Sap) {
  7. let Components;
  8. (function (Components) {
  9. class SapReportWidget extends Unibase.Platform.Core.BaseComponent {
  10. cssFiles() {
  11. return [];
  12. }
  13. jsFiles() {
  14. return ["apps/sprl/managers/sap/sapreportmanager.js", "platform/forms/components/formviewer/formviewer.js", 'libs/parsley/parsley.min.js'];
  15. }
  16. html(id, containerid) {
  17. 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>`;
  18. }
  19. load(id, containerid, callback) {
  20. var instance = this;
  21. $("#downloadDoc").click(function () {
  22. var formName = $("#formName").text();
  23. if (formName == "Sales Report" || formName == "Outstanding Statement" || formName == "Account Statement")
  24. instance.downloadExcel();
  25. else
  26. instance.downloadPdf();
  27. });
  28. }
  29. loadForm(FormId, Pk_Value, AppConfigurationId, Callback, ElementId) {
  30. }
  31. downloadExcel() {
  32. var table = Tabulator.prototype.findTable('#divsapReports')[0];
  33. table.download("csv", $("#formName").text() + ".csv");
  34. }
  35. downloadPdf() {
  36. var html = `<table class="table">` +
  37. `<tbody>`;
  38. $(".divsapReports").find(".added-item").each(function () {
  39. var id = $(this).find(".spn_id").text();
  40. var value = $(this).find(".spn_value").text();
  41. html += `<tr><td><strong>` + id + `</strong></td><td>` + value + `</td></tr>`;
  42. });
  43. html += `</tbody></table>`;
  44. var newWin = window.open('', 'Print-Window');
  45. newWin.document.write('<html><body onload="window.print()">' + html + '</body></html>');
  46. newWin.document.title = $("#formName").text();
  47. newWin.document.close();
  48. setTimeout(function () { newWin.close(); }, 10);
  49. }
  50. static Instance() {
  51. return new SapReportWidget();
  52. }
  53. }
  54. Components.SapReportWidget = SapReportWidget;
  55. })(Components = Sap.Components || (Sap.Components = {}));
  56. })(Sap = Apps.Sap || (Apps.Sap = {}));
  57. })(Apps = SPRL.Apps || (SPRL.Apps = {}));
  58. })(SPRL || (SPRL = {}));