Commit Graph

2983 Commits

Author SHA1 Message Date
Carlos Ruiz 557c483fc9
IDEMPIERE-4968 Enable 2Pack to run java class or script (FHCA-3112 FHCA-3113) / Shell script (#891)
* IDEMPIERE-4968 Enable 2Pack to run java class or script (FHCA-3112 FHCA-3113) / Shell script

* IDEMPIERE-4968 Enable 2Pack to run java class or script (FHCA-3112 FHCA-3113) / Java Shell script -> beanshell/groovy

* IDEMPIERE-4968 Enable 2Pack to run java class or script (FHCA-3112 FHCA-3113) / Remove java class option, fixes for script

* IDEMPIERE-4968 Enable 2Pack to run java class or script (FHCA-3112 FHCA-3113) / rename to ScriptJSR223

* IDEMPIERE-4968 Enable 2Pack to run java class or script (FHCA-3112 FHCA-3113) / add audit information to SQL statements, shell and JSR223 scripts
2021-09-24 16:38:07 +08:00
Carlos Ruiz 80ed239ac2
IDEMPIERE-4979 ModelGenerator class generates entries for inactive ref lists (#898) 2021-09-23 22:58:21 +08:00
hengsin 164e6d15b6
IDEMPIERE-4842 Easier model registration (#895)
* IDEMPIERE-4842 Easier model registration

- Needs to enable jar scanning to support felix/console installation of
plugin jar.
- add rejectJars call to reduce startup delay after enable of jar
scanning. keep the list short to reduce future maintenance hazard.
- remove the not supported use of acceptPackagesNonRecursive and
acceptClasses together.
- change getAcceptClassesPatterns() default to X_* and M*. Withouut
acceptPackages, we need to scan both X and M classes.

* IDEMPIERE-4842 Easier model registration

- remove use of rejectJars since the performance difference is small and
need maintenance.
- remove warning for not overriding getPackages(). Plugin that doesn't
has many model class (< 100) doesn't have to override getPackages() as
performance is good enough with the use of acceptClasses(...).
2021-09-23 21:14:47 +08:00
Fr Jeremy Krieg 445ca8e0fa
Fix error in setting product resource type. (#897)
Signed-off-by: kriegfrj <fr.jkrieg@greekwelfaresa.org.au>
2021-09-23 15:11:03 +02:00
Saulo José Gil 2b4a2be5a2
IDEMPIERE-4842 Easier model registration (#893)
* IDEMPIERE-4842 Easier model registration

- Change from https://github.com/atteo/classindex to
https://github.com/classgraph/classgraph, remove annotation processor
config.

- Change service.ranking of DefaultModelFactory to -1 and
service.ranking of AnnotationBasedModelFactory to 0. This give
AnnotationBasedModelFactory higher priority over DefaultModelFactory and
allow plugins to have higher priority over AnnotationBasedModelFactory
with server.ranking of 1 (the common practise before the introduction of
AnnotationBasedModelFactory).

- Added resultset constructor to MTree. This is to allow the use of
MTree with model factory.

- Remove classindex annotation from org.adempiere.base.Model and X_*
model classes.

- Added unit test for table to model class mapping

- AnnotationBasedModelFactory: Change from using annotation processor to
runtime annotation scanning using the classgraph library. The default
setting scans all the X_* model class and travels the inheritance
hierarchy to discover the M* model class. Plugin needs to create a
subclass of AnnotationBasedModelFactory and register it as an OSGi
component to scan the plugin's annotated model classes (the plugin's
custom AnnotationBasedModelFactory component should have service.ranking
> 0).

* IDEMPIERE-4842 Easier model registration

minor refinement

* Minor changes

Co-authored-by: hengsin <hengsin@gmail.com>
2021-09-22 22:42:51 +08:00
Nicolas Micoud 86c21dafda
IDEMPIERE-4866 : Multiple smtp per tenant (#884)
* IDEMPIERE-4866 : Multiple smtp per tenant

Same PR as https://github.com/idempiere/idempiere/pull/783

* IDEMPIERE-4866 : Multiple smtp per tenant - various fixes

Fixes suggested by Carlos on https://github.com/idempiere/idempiere/pull/783 (remove System.out, change AD_Element name, tab in SingleRow mode) + fix NPE

* IDEMPIERE-4866 : Multiple smtp per tenant : implement cache

* IDEMPIERE-4866 : Multiple smtp per tenant : process EMailTest was not set on column

Fixes by Carlos

Co-authored-by: Carlos Ruiz <carg67@gmail.com>
2021-09-21 14:56:56 +02:00
Carlos Ruiz 078d130cd7
IDEMPIERE-4969 Clean non-working 2Pack Code for File and CodeSnippet (#886) 2021-09-19 15:31:18 +08:00
hengsin 2f8adb48c9
IDEMPIERE-4842 Easier model registration (#887)
- Temporary disable AnnotationBasedModelFactory until getSubclasses()
doesn't work for subclass from different package is resolve.
2021-09-18 15:36:50 +08:00
Saulo José Gil 602e450a93
IDEMPIERE-4842 Easier model registration (#877)
* Preliminary support for automatic model class registration

Model classes can be tagged with a new @Model annotation that allows for
easy/fast class scanning/registration, based on the ClassIndex library.
The list of annotated model classes is generated at compile time, thus
reducing reflection reliance to a bare minimum.

NOTE: Eclipse uses its own Java compiler which is not strictly standard
compliant and requires extra configuration. In Java Compiler ->
Annotation Processing -> Factory Path you need to add ClassIndex jar
file

* Annotation based model factory

* Improve classloader determination for annotation scanning

ClassIndex default annotation scanning method determines the classloader
to be used by calling Thread.currentThread().getContextClassLoader(),
which should not be used in an OSGi environment.

* Enable ClassIndex's annotation processor under Eclipse

Make sure annotation processing is enabled at Module Properties -> Java
Compiler -> Annotation Processing

* Refactoring annotation-based model class detection

Eliminated the need of annotating M* classes, by using ClassIndex's
@IndexSubclasses annotation.

* Minor change

* Minor changes

* Creation of AbstractModelFactory

* Documentation

* Make AnnotationBasedModelFactory extend AbstractModelFactory

* IDEMPIERE-4842 Easier model registration

- add annotation processor jdt settings
- fix @Component annotation for AnnotationBasedModelFactory
- fix generated x_* class missing "org.atteo.classindex.IndexSubclasses"
import

* Expose ClassIndex lib to other bundles

* Updated model classes

Co-authored-by: hengsin <hengsin@gmail.com>
2021-09-18 13:35:57 +08:00
Nicolas Micoud a1da95cfff
IDEMPIERE-4946 : Add IsShowInDashboard, SeqNo and ImageURL on AD_User… (#866)
* IDEMPIERE-4946 : Add IsShowInDashboard, SeqNo and ImageURL on AD_UserDef_Info

* IDEMPIERE-4946 : Add IsShowInDashboard, SeqNo and ImageURL on AD_UserDef_Info

Use customized image from tenant level when opening the panel

* IDEMPIERE-4946 : Add IsShowInDashboard, SeqNo and ImageURL on AD_UserDef_Info - fix migration scripts name
2021-09-17 15:56:44 +02:00
Carlos Ruiz 5979f65bbd
IDEMPIERE-2853 Panel tab as a factory - preserve AD_Tab.IsSortTab for backward compatibility (#885) 2021-09-17 21:07:50 +08:00
Nicolas Micoud e0a8637880
IDEMPIERE-4721 : Financial Report : exclude all adjustement periods (#872)
* IDEMPIERE-4721 : Financial Report : exclude all adjustement periods

* Change warning to info

Co-authored-by: Carlos Ruiz <carg67@gmail.com>
2021-09-15 14:29:11 +02:00
hengsin 5f22f7f495
IDEMPIERE-4961 Minor performance enhancement for AD Window (#878)
* IDEMPIERE-4961 Minor performance enhancement for AD Window

* IDEMPIERE-4961 Minor performance enhancement for AD Window

Fix potential mtab not found issue with 2pack import.
2021-09-15 13:00:28 +02:00
hengsin 309eb5366f
IDEMPIERE-4960 Performance improvement for the opening of info window (#876)
* IDEMPIERE-4960 Performance improvement for the opening of info window

* IDEMPIERE-4960 Performance improvement for the opening of info window

Query.scroll and Query.list basically offer the same db performance, the
previous change is unnecessary.
2021-09-14 16:16:07 +02:00
Carlos Ruiz a95983730f
IDEMPIERE-4963 Performance: avoid loop in X_ class interface getters (#880) 2021-09-14 21:17:45 +08:00
hengsin ab12354cb4
IDEMPIERE-4959 Performance improvement for the opening of form window (#875)
* IDEMPIERE-4959 Performance improvement for the opening of form window

* IDEMPIERE-4959 Performance improvement for the opening of form window

minor cache name change.
2021-09-14 15:04:06 +02:00
hengsin eedc3c6e35
IDEMPIERE-4924 Performance issue with indirect context (#863)
* IDEMPIERE-4924 Performance issue with indirect context

- added cache

* IDEMPIERE-4924 Performance issue with indirect context
2021-09-14 14:32:20 +02:00
hengsin 21c07785e8
IDEMPIERE-4958 Performance improvement for the opening of process dialog (#874)
* IDEMPIERE-4958 Performance improvement for the opening of process dialog

* IDEMPIERE-4958 Performance improvement for the opening of process dialog

Query.scroll and Query.list has similar db performance, the previous
change is not needed.
2021-09-14 14:09:55 +02:00
hengsin f8c72c0451
IDEMPIERE-4949 Desktop tab enhancements (#868)
* IDEMPIERE-4949 Desktop tab enhancements
* ConfigurationLevel=C

Co-authored-by: Carlos Ruiz <carg67@gmail.com>
2021-09-08 13:40:00 +02:00
Xin Wang 7f09b1adc5
IDEMPIERE-4945 Selected row is changed after table sort in Swing UI (#865)
At the end of table sorting, trigger data status change event before UI
event, so that GridTab data is changed before UI refresh, which is
needed for Swing UI.
2021-09-07 20:10:09 +08:00
hengsin ae5a665dd8
IDEMPIERE-4933 Platform update for 9.x (#857)
* IDEMPIERE-4933 Platform update for 9.x

- WIP

* IDEMPIERE-4933 Platform update for 9.x

- project to repackaged some osgi bundles from maven

* IDEMPIERE-4933 Platform update for 9.x

- Fix target platform error

* IDEMPIERE-4933 Platform update for 9.x

* IDEMPIERE-4933 Platform update for 9.x

- minor eclipse setting fix
2021-09-04 16:12:10 +02:00
hengsin f1c663e100
IDEMPIERE-4937 Refreshing the GridTab after moving a node in the Tree (#860)
* IDEMPIERE-4937 Refreshing the GridTab after moving a node in the Tree

* IDEMPIERE-4937 Refreshing the GridTab after moving a node in the Tree

Use Trx object instead of context for event changes indicator.
2021-09-04 20:16:14 +08:00
Carlos Ruiz 39ad82ebf0
IDEMPIERE-4470 Window Advanced Search - New operator types: AND Not, Or Not (#850)
* IDEMPIERE-4470 Window Advanced Search - New operator types: AND Not, Or Not

Based on pull request 170
Co-authored-by: Igor Pojzl <igor.pojzl@cloudempiere.com>

* IDEMPIERE-4470 Window Advanced Search - New operator types: AND Not, Or Not

Rename migration scripts as suggested by Heng Sin
2021-09-03 22:20:50 +08:00
hengsin 48c6dd40d4
IDEMPIERE-4250 Implement optimistic locking support (#838)
* IDEMPIERE-4250 Implement optimistic locking support

* IDEMPIERE-4250 Implement optimistic locking support

- merge fix from Carlos.
2021-09-03 13:17:20 +08:00
Carlos Ruiz 22f47cd382
IDEMPIERE-4939 Implement ability to discover operating system environment variables when parsing context (FHCA-3026) (#853)
* IDEMPIERE-4939 Implement ability to discover operating system environment variables when parsing context (FHCA-3026)

* IDEMPIERE-4939 Add unit test
2021-08-31 14:24:19 +02:00
Carlos Ruiz cd849dc23b
IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) / add context discovery to AD_AuthorizationCredential.AuthorizationRedirectURL (#854)
FHCA-3026
2021-08-30 18:25:41 +02:00
Carlos Ruiz fcef8e1c15
IDEMPIERE-4911 Silent fail when translated column is shorter than original column (FHCA-2888) / fix issue with 2Pack (#855) 2021-08-30 18:24:25 +02:00
Nicolas Micoud 0ace1aa246
IDEMPIERE-4936 : Add IsDisplayedGrid on UserDefWindow (#849) 2021-08-30 15:41:45 +02:00
Deepak Pansheriya 96baf0b7cd
IDEMPIERE-2853: Support for IADTabPanel as factory to add custom Tab … (#579)
* IDEMPIERE-2853: Support for IADTabPanel as factory to add custom Tab types
sh: q: command not found

* IDEMPIERE-2853: adding requested Java doc, fixing seq mismatch in oracle and postgresql, Using Interface method instead of manual isSortTab check,

* IDEMPIERE-2853: Adding default implementation for isEnableCustomizeButton in IADTabpanel

* IDEMPIERE-2853: renaming reference label and Added support for allowing implementor to update toolbar state.

* IDEMPIERE-2853: Fixing compilation issue due to merging to master branch
2021-08-30 13:56:34 +02:00
Martin Schönbeck 111eab35d3
Idempiere 4724 (#637)
* IDEMPIERE-4724
allow to concatenate parts at import
allow to prefix them which also is necessary to separate them when concatenating
allow to concatenate callouts and provide sort of parameters

* Update CalloutEngine.java

minor - typos in comments

* Update ImpFormatRow.java

is better to raise the exception when the callout cannot be found - the results can be unexpected for end users if the callouts are not called

Co-authored-by: Carlos Ruiz <carg67@gmail.com>
2021-08-27 11:22:18 +02:00
Diego Ruiz 2f0e426771
IDEMPIERE-4723 - Clean up code -> remaining org.adempiere.base/src/org/compiere/model/ classes (#846) 2021-08-21 15:21:35 +08:00
Carlos Ruiz 0167c91424
IDEMPIERE-4911 Silent fail when translated column is shorter than original column (FHCA-2888) (#844)
* IDEMPIERE-4911 Silent fail when translated column is shorter than original column (FHCA-2888)

Changes:
* Saving a value that doesn't fit in the translation now fails with a proper user understandable message
* Synchronize Doc Translation now fails with a user understandable message in case it fails because a value doesn't fit
* When updating a column on a translation table, check for the size of the original column and update the size accordingly
* When updating a translated column, show warnings to user about creating the table, or creating the column, or updating the column size

* IDEMPIERE-4911 Silent fail when translated column is shorter than original column (FHCA-2888)

Improve message for end user
2021-08-20 13:59:35 +02:00
hengsin f912cf2c21
IDEMPIERE-701 Implement solving indirect context (#828)
* IDEMPIERE-701 Implement solving indirect context

- implement for tab display logic and readonly logic

* IDEMPIERE-701 Implement solving indirect context

- make use of parent gridtab for indirect context resolution
2021-08-20 13:47:25 +08:00
Carlos Ruiz 68a5dc1456
IDEMPIERE-4918 Cannot use simple auth after used OAuth (FHCA-2014) (#842) 2021-08-18 14:51:44 +02:00
hengsin 8cc3a2a33f
IDEMPIERE-4915 Improvements to Preference Popup (#835)
* IDEMPIERE-4915 Improvements to Preference Popup

* IDEMPIERE-4915 Improvements to Preference Popup

- Move MY_PROFILE_MENU_ID to SystemIDs
2021-08-18 13:15:07 +08:00
hengsin 461b597c8e
IDEMPIERE-3494 Implement DocStatus/DocAction for Project Issue (#839) 2021-08-17 18:59:14 +02:00
hengsin ac01e77a40
IDEMPIERE-4880 Replace iText PDF with OpenPDF (#837) 2021-08-17 18:44:32 +02:00
hengsin e585d4417d
IDEMPIERE-2963 Error creating report after zoom across (#833)
- generate fully qualified where clause for generic zoom across
2021-08-17 16:10:52 +02:00
hengsin f8fbf5f3bb
IDEMPIERE-1351 Quick Entry when Field can not zoom to 2 different windows (#829) 2021-08-17 16:07:13 +02:00
alara123 7745d0f27e
IDEMPIERE-4914 #resolve (#832) 2021-08-14 15:28:30 +08:00
Carlos Ruiz 1af3cc0848
IDEMPIERE-4061 isTranslated is not set Yes on new Record default (#825) 2021-08-12 23:10:35 +02:00
Diego Ruiz ce689bbbc2
IDEMPIERE-4912 Set the product's UOM on beforesave when creating an order line (#827) 2021-08-12 23:21:16 +08:00
Carlos Ruiz 8ec5029e8e
IDEMPIERE-4909 Allow empty password when using OAuth2 - refactor to allow sending email without AD_User (FHCA-2892) (#824) 2021-08-12 23:06:44 +08:00
Carlos Ruiz 729fc4a61e
IDEMPIERE-4910 Performance - Discover of UUID column not cached in PO (#826) 2021-08-12 22:14:46 +08:00
hengsin 184e8191e6
IDEMPIERE-4904 Add custom query clause support to report parameter (#821) 2021-08-12 15:02:01 +02:00
Diego Ruiz 29343610ca
IDEMPIERE-4723 - Clean up code -> MT/MU/MW* classes (#823) 2021-08-11 19:36:27 +08:00
hengsin d3d1a735b0
IDEMPIERE-4899 Report: print product instance attribute name and valu… (#814)
* IDEMPIERE-4899 Report: print product instance attribute name and value as column

* IDEMPIERE-4899 Report: print product instance attribute name and value as column

- use parenthesis for display logic
- fixed display logic evaluation exception
- fixed index out of bound exception for xls and xlsx

* IDEMPIERE-4899 Report: print product instance attribute name and value as column

- Fix css for columns that have been shifted to the right
2021-08-06 11:12:05 +02:00
igorpojzl 2cee3ff007
IDEMPIERE-4895 Product Cost - Valid Combination Caching (#805) 2021-08-03 13:00:46 +08:00
hengsin 1fb4067c01
IDEMPIERE-4894 OSGi Interface to support custom header and footer (#804)
* IDEMPIERE-4894 OSGi Interface to support custom header and footer

* IDEMPIERE-4894 OSGi Interface to support custom header and footer

incorporate migration script fix from Carlos
2021-07-30 13:53:28 +02:00
Deepak Pansheriya 3c8e05c9d6
IDEMPIERE-4770: Cross tenant issue while broadcasting message to System tenant role (#806) 2021-07-30 11:17:43 +02:00