diff --git a/src/components/ADempiere/PanelDefinition/StandardPanel.vue b/src/components/ADempiere/PanelDefinition/StandardPanel.vue
new file mode 100644
index 00000000..96f5ea33
--- /dev/null
+++ b/src/components/ADempiere/PanelDefinition/StandardPanel.vue
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/ADempiere/PanelDefinition/UnsupportedPanel.vue b/src/components/ADempiere/PanelDefinition/UnsupportedPanel.vue
new file mode 100644
index 00000000..4ae82dcb
--- /dev/null
+++ b/src/components/ADempiere/PanelDefinition/UnsupportedPanel.vue
@@ -0,0 +1,42 @@
+
+
+
+
+ Panel Is Unsupported
+
+
+
+
diff --git a/src/components/ADempiere/PanelDefinition/index.vue b/src/components/ADempiere/PanelDefinition/index.vue
new file mode 100644
index 00000000..baed55ee
--- /dev/null
+++ b/src/components/ADempiere/PanelDefinition/index.vue
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
diff --git a/src/router/modules/ADempiere/menu.js b/src/router/modules/ADempiere/menu.js
index 2f5ef623..bda8441c 100644
--- a/src/router/modules/ADempiere/menu.js
+++ b/src/router/modules/ADempiere/menu.js
@@ -1,7 +1,23 @@
+// ADempiere-Vue (Frontend) for ADempiere ERP & CRM Smart Business Solution
+// Copyright (C) 2017-Present E.R.P. Consultores y Asociados, C.A.
+// Contributor(s): Leonel Matos lMatos@eroya.com www.erpya.com
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
import { requestMenu } from '@/api/user.js'
-import { convertAction } from '@/utils/ADempiere/dictionaryUtils'
+import { convertAction } from '@/utils/ADempiere/dictionaryUtils.js'
import staticRoutes from '@/router/modules/ADempiere/staticRoutes.js'
-/* Layout */
+import testRoutes from '@/router/modules/ADempiere/testRoutes.js'
import Layout from '@/layout'
/**
@@ -55,8 +71,16 @@ export function loadMainMenu({
}
asyncRoutesMap.push(optionMenu)
})
- const permiseStactiRoutes = hidenStactiRoutes({ staticRoutes, permiseRole: role })
- resolve(permiseStactiRoutes.concat(asyncRoutesMap))
+
+ const permiseStactiRoutes = hidenStactiRoutes({
+ staticRoutes,
+ permiseRole: role
+ })
+ const menuRoutes = permiseStactiRoutes
+ .concat(asyncRoutesMap)
+ .concat(testRoutes)
+
+ resolve(menuRoutes)
}).catch(error => {
console.warn(`Error getting menu: ${error.message}. Code: ${error.code}.`)
})
diff --git a/src/router/modules/ADempiere/staticRoutes.js b/src/router/modules/ADempiere/staticRoutes.js
index 106fbff6..c22b9125 100644
--- a/src/router/modules/ADempiere/staticRoutes.js
+++ b/src/router/modules/ADempiere/staticRoutes.js
@@ -1,3 +1,18 @@
+// ADempiere-Vue (Frontend) for ADempiere ERP & CRM Smart Business Solution
+// Copyright (C) 2017-Present E.R.P. Consultores y Asociados, C.A.
+// Contributor(s): Leonel Matos lMatos@eroya.com www.erpya.com
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
/* Layout */
import Layout from '@/layout'
@@ -8,6 +23,7 @@ const staticRoutes = [
redirect: '/404',
hidden: true
},
+
{
path: '/ProcessActivity',
component: Layout,
@@ -32,6 +48,7 @@ const staticRoutes = [
}
]
},
+
{
path: '/report-viewer',
component: Layout,
@@ -49,22 +66,7 @@ const staticRoutes = [
}
]
},
- {
- path: '/test',
- component: Layout,
- hidden: true,
- children: [
- {
- path: '/test',
- component: () => import('@/views/ADempiere/Test'),
- name: 'Test View',
- meta: {
- title: 'Test View',
- isIndex: true
- }
- }
- ]
- },
+
{
path: '/PriceChecking',
component: Layout,
@@ -82,6 +84,7 @@ const staticRoutes = [
}
]
},
+
{
path: '/BarcodeReader',
component: Layout,
@@ -99,6 +102,7 @@ const staticRoutes = [
}
]
},
+
{
path: '/ProductInfo',
component: Layout,
diff --git a/src/router/modules/ADempiere/testRoutes.js b/src/router/modules/ADempiere/testRoutes.js
new file mode 100644
index 00000000..e6e1d544
--- /dev/null
+++ b/src/router/modules/ADempiere/testRoutes.js
@@ -0,0 +1,71 @@
+// ADempiere-Vue (Frontend) for ADempiere ERP & CRM Smart Business Solution
+// Copyright (C) 2017-Present E.R.P. Consultores y Asociados, C.A.
+// Contributor(s): Edwin Betancourt EdwinBetanc0urt@outlook.com www.erpya.com
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+/* Layout */
+import Layout from '@/layout'
+
+const testRoutes = [
+ {
+ path: '/test',
+ component: Layout,
+ hidden: true,
+ children: [
+ {
+ path: '/test',
+ component: () => import('@/views/ADempiere/Test'),
+ name: 'Test View',
+ meta: {
+ title: 'Test View',
+ isIndex: true
+ }
+ }
+ ]
+ },
+ {
+ path: '/test/process/standard',
+ component: Layout,
+ hidden: true,
+ children: [
+ {
+ path: '/test/process/standard',
+ component: () => import('@/views/ADempiere/Test/Process'),
+ name: 'Process Test View',
+ meta: {
+ title: 'Process Test View',
+ isIndex: true
+ }
+ }
+ ]
+ },
+ {
+ path: '/test/smart-browser/standard',
+ component: Layout,
+ hidden: true,
+ children: [
+ {
+ path: '/test/smart-browser/standard',
+ component: () => import('@/views/ADempiere/Test/SmartBrowser'),
+ name: 'Smart Browser Test View',
+ meta: {
+ title: 'SmartBrowser Test View',
+ isIndex: true
+ }
+ }
+ ]
+ }
+]
+
+export default testRoutes
diff --git a/src/utils/ADempiere/dictionaryUtils.js b/src/utils/ADempiere/dictionaryUtils.js
index cf1d86ac..b5213191 100644
--- a/src/utils/ADempiere/dictionaryUtils.js
+++ b/src/utils/ADempiere/dictionaryUtils.js
@@ -20,6 +20,7 @@ import { getContext, getParentFields, getPreference, parseContext } from '@/util
import REFERENCES, { BUTTON, DEFAULT_SIZE, FIELDS_HIDDEN } from '@/utils/ADempiere/references'
import { FIELD_OPERATORS_LIST } from '@/utils/ADempiere/dataUtils'
import language from '@/lang'
+import { config } from '@/utils/ADempiere/config'
/**
* Generate field to app
@@ -685,16 +686,25 @@ export function convertAction(action) {
actionAttributes.name = 'process'
actionAttributes.icon = 'component'
actionAttributes.component = () => import('@/views/ADempiere/Process')
+ if (config.betaFunctionality.process) {
+ actionAttributes.component = () => import('@/views/ADempiere/ProcessView')
+ }
break
case 'R':
actionAttributes.name = 'report'
actionAttributes.icon = 'skill'
actionAttributes.component = () => import('@/views/ADempiere/Process')
+ if (config.betaFunctionality.process) {
+ actionAttributes.component = () => import('@/views/ADempiere/ProcessView')
+ }
break
case 'S':
actionAttributes.name = 'browser'
actionAttributes.icon = 'search'
actionAttributes.component = () => import('@/views/ADempiere/Browser')
+ if (config.betaFunctionality.process) {
+ actionAttributes.component = () => import('@/views/ADempiere/BrowserView')
+ }
break
case 'T':
actionAttributes.name = 'task'
@@ -704,6 +714,9 @@ export function convertAction(action) {
actionAttributes.name = 'window'
actionAttributes.icon = 'tab'
actionAttributes.component = () => import('@/views/ADempiere/Window')
+ if (config.betaFunctionality.window) {
+ actionAttributes.component = () => import('@/views/ADempiere/WindowView')
+ }
break
case 'X':
actionAttributes.name = 'form'
diff --git a/src/views/ADempiere/BrowserView/index.vue b/src/views/ADempiere/BrowserView/index.vue
new file mode 100644
index 00000000..7a776712
--- /dev/null
+++ b/src/views/ADempiere/BrowserView/index.vue
@@ -0,0 +1,248 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/ADempiere/ProcessView/index.vue b/src/views/ADempiere/ProcessView/index.vue
new file mode 100644
index 00000000..50692f02
--- /dev/null
+++ b/src/views/ADempiere/ProcessView/index.vue
@@ -0,0 +1,165 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/ADempiere/Test/Process/index.vue b/src/views/ADempiere/Test/Process/index.vue
new file mode 100644
index 00000000..d22f7e84
--- /dev/null
+++ b/src/views/ADempiere/Test/Process/index.vue
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
diff --git a/src/views/ADempiere/Test/SmartBrowser/index.vue b/src/views/ADempiere/Test/SmartBrowser/index.vue
new file mode 100644
index 00000000..7bede191
--- /dev/null
+++ b/src/views/ADempiere/Test/SmartBrowser/index.vue
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
diff --git a/src/views/ADempiere/WindowView/DocumentWindow.vue b/src/views/ADempiere/WindowView/DocumentWindow.vue
new file mode 100644
index 00000000..e69de29b
diff --git a/src/views/ADempiere/WindowView/StandardWindow.vue b/src/views/ADempiere/WindowView/StandardWindow.vue
new file mode 100644
index 00000000..5803e0a2
--- /dev/null
+++ b/src/views/ADempiere/WindowView/StandardWindow.vue
@@ -0,0 +1,55 @@
+
+
+
+
+
+
+
diff --git a/src/views/ADempiere/WindowView/index.vue b/src/views/ADempiere/WindowView/index.vue
new file mode 100644
index 00000000..4baace78
--- /dev/null
+++ b/src/views/ADempiere/WindowView/index.vue
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
+
+
+
+
+