* IDEMPIERE-2172 Attribute set with mandatory type = When Shipping not working
* IDEMPIERE-2172 Attribute set with mandatory type = When Shipping not working
- added MTransaction
- added reversal handling
* IDEMPIERE-5052 Date Min/Max Validation wrong with 5 digit years
* IDEMPIERE-5052 Date Min/Max Validation wrong with 5 digit years / enable for Cost+Price and String
* IDEMPIERE-5050 Service startup freeze
Switched all annotation-based factories to asynchronous class scan.
* Deferred MIssue record creation
Log errors on the database after all model factories are initialized.
* Moved webservice model classes over to its own package
Model factories WS_ModelFactory and AnnotationBasedModelFactory were
overlapping on the org.compiere.model package. This produced class
loading problems since the base bundle has no visibility over the
webservices bundle (e.g.: MWebservice).
* Minor changes
* IDEMPIERE-4858 : Helper process "Make Table a Document" - fixes for translation tables
see details in tickets
* IDEMPIERE-4858 : Helper process "Make Table a Document" - add TableIndex records
* IDEMPIERE-4858 : Helper process "Make Table a Document" - AD_Message / tick IsTranslated on main table
Co-Authored-By: Carlos Ruiz <carg67@gmail.com>
* Delete pr990_PR.txt
commited by error
Co-authored-by: Carlos Ruiz <carg67@gmail.com>
* IDEMPIERE-4900 SQL statement added as an option to define WF Next Node Condition
Base on pull request 813 (Anton Mostovenko) and patch from
IDEMPIERE-1832 (Deepak Pansheriya)
* IDEMPIERE-4900 SQL statement added as an option to define WF Next Node Condition
Incorporate patch from carlos
* IDEMPIERE-4900 SQL statement added as an option to define WF Next Node Condition
Incorporate patch from Carlos
* IDEMPIERE-5039 Negative Lost Sales Quantity
* IDEMPIERE-5039 Negative Lost Sales Quantity
* IDEMPIERE-5039 Negative Lost Sales Quantity
add unit test
* IDEMPIERE-5029 User can make Shipment/Receipt Line Product different from Order Line Product
* IDEMPIERE-5029 User can make Shipment/Receipt Line Product different from Order Line Product
Merge patch from Carlos
* IDEMPIERE-5029 User can make Shipment/Receipt Line Product different from Order Line Product
Make consistent with previous patch - always use oLine.M_Product_ID for
reservation
* IDEMPIERE-5029 User can make Shipment/Receipt Line Product different from Order Line Product
add safe guard against oLine is Charge and sLine is Product.
* IDEMPIERE-5029 User can make Shipment/Receipt Line Product different from Order Line Product
- need to apply the oLine.getM_Product_ID changes to reservation log
too.
* IDEMPIERE-5029 User can make Shipment/Receipt Line Product different from Order Line Product
More fix for update of qtyreserved not using product id from oLine.
* IDEMPIERE-5029 User can make Shipment/Receipt Line Product different from Order Line Product
update of qtyreserved: should use warehouse and issotrx from order too
* IDEMPIERE-5031 Implement auto produce upon shipment for mfg light
* IDEMPIERE-5031 Implement auto produce upon shipment for mfg light
Fix clean up of unit test
* IDEMPIERE-5025 Easier usage of process parameters
Created @Parameter annotation in order to tag process class attributes
as parameters and have them to have their values assigned automatically
without extra code.
* Minor changes
* IDEMPIERE-4966 Error in FinReport with List Sources and Native PostgreSQL
* IDEMPIERE-4966 Error in FinReport with List Sources and Native PostgreSQL
Incorporate suggestion from Carlos (replace DB.executeUpdate call with
DB.executeUpdateEx)
* IDEMPIERE-4863-1 Enable save column width in WListBox
This PR is the base for implementing save of column width of a wlistbox in forms and windows.
* IDEMPIERE-4863-1 Enable save column width in WListBox implementation example
This commit is showing examples implementation of this PR, it is for infoProductWindow and infoWindow
* IDEMPIERE-4986 Extend events to prefill email dialog variables from report window
* IDEMPIERE-4986 Extend events to prefill email dialog variables from report window / also in new Attachment button
* IDEMPIERE-4986 Extend events to prefill email dialog variables from report window / change approach to constructor
* IDEMPIERE-4992 email from archive dialog
* IDEMPIERE-4721 : Financial Report : exclude all adjustment periods - fix NPE
reported by @CarlosRuiz-globalqss ; see https://idempiere.atlassian.net/browse/IDEMPIERE-4721?focusedCommentId=47539
* IDEMPIERE-4721 : Financial Report : exclude all adjustment periods - fix NPE
Using Carlos's suggestion
Co-Authored-By: Carlos Ruiz <carg67@gmail.com>
Co-authored-by: Carlos Ruiz <carg67@gmail.com>
* 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
* 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(...).
* 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>
* 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>
* IDEMPIERE-4842 Easier model registration
- Temporary disable AnnotationBasedModelFactory until getSubclasses()
doesn't work for subclass from different package is resolve.
* IDEMPIERE-4842 Easier model registration
- turn of annotation processing in editor which causes slow editor
performance
* 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>
* 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
* 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.
* 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.
* IDEMPIERE-4959 Performance improvement for the opening of form window
* IDEMPIERE-4959 Performance improvement for the opening of form window
minor cache name change.
* 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.
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.
* 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.
* 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
* 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
* 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>
* 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