Re: audit trails display
Re: audit trails display
- Subject: Re: audit trails display
- From: Fabian Peters <email@hidden>
- Date: Mon, 17 Nov 2014 08:13:25 +0100
Am 15.11.2014 um 19:17 schrieb Theodore Petrosky <email@hidden>:
> couple of things. Is there a component to display newValues when the type.name is “Inserted" i.e.:
>
> { "releaseDate" = "2014-11-14 05:00:00 Etc/GMT"; "width" = "728"; "height" = "90"; "current" = "true"; "description" = "sfgsdfgsd"; "company" = "Company.3"; "theInsertion" = "ERFileAttachment.4"; "jobNumber" = "1222"; }
I don't have a component for that and I don't think that one exists in Wonder.
> and you reference ELD2WDisplayLocalizedString extends ERD2WDisplayString and localizes the property value.
>
> Is that a component you created?
Yes.
> I guess the issue of the newValues component, is that I need one component if the object is newly created and then just the string value if it is a change.
You could probably make one component flexible enough to handle both cases.
Fabian
> Ted
>
> On Nov 15, 2014, at 6:46 AM, Fabian Peters <email@hidden> wrote:
>
>> Hi Ted,
>>
>> Am 15.11.2014 um 03:31 schrieb Theodore Petrosky <email@hidden>:
>>
>>> I have just started implementing ERCoreBusinessLogic’s AuditTrails. This is really good stuff. However, I had to ‘fix’ a boolean.
>>>
>>> In the migration of ERCoreBusinessLogic I see:
>>>
>>> ERXMigrationTable eRCAuditTrailTable = database.newTableNamed("ERCAuditTrail");
>>> eRCAuditTrailTable.newStringColumn("GID", 255, ALLOWS_NULL);
>>> eRCAuditTrailTable.newIntegerColumn("ID", NOT_NULL);
>>> eRCAuditTrailTable.newIntBooleanColumn("IS_DELETED", NOT_NULL);
>>> eRCAuditTrailTable.create();
>>> eRCAuditTrailTable.setPrimaryKey("ID”);
>>>
>>> In my postgresql backend, is_deleted is added as an integer column. So I had to run a migration of my own:
>>>
>>> ERXMigrationTable auditTrailTable = database.existingTableNamed("ercaudittrail");
>>>
>>> auditTrailTable.existingColumnNamed("is_deleted").delete();
>>> auditTrailTable.newFlagBooleanColumn("is_deleted", false);
>>>
>>> Is there a setting I can use to make the ERCoreBusinessLogic’s migration create a boolean column?
>>
>> I don't think so. I've created additional migrations for some of ERCoreBusinessLogic, to change booleans and increase column sizes of ERCMAIL_MESSAG.
>>
>>> Are there any Wonder components for displaying ercaudittrailentry data? I see when I insert a new entiry:
>>>
>>> {
>>> "releaseDate" = "2014-11-14 05:00:00 Etc/GMT";
>>> "width" = "728";
>>> "height" = "90";
>>> "current" = "true";
>>> "description" = "sfgsdfgsd";
>>> "company" = "Company.3";
>>> "theInsertion" = "ERFileAttachment.4";
>>> "jobNumber" = "1222";
>>> }
>>>
>>> Do I need to process this to display it? I see that toOne relations are listed Person.1. I was looking for components to display this. I don’t mind processing, but maybe there are components that could help.
>>
>> There probably won't be a "one size fits all" solution. You can access an EO's audit trail via:
>>
>> public ERCAuditTrail auditTrail() {
>> return ERCAuditTrail.clazz.auditTrailForObject(editingContext(), this);
>> }
>>
>> And here are some sample rules for a product audit trail that tracks inventory and price changes:
>>
>> 40 : (entity.name = 'ERCAuditTrailEntry' and propertyKey = 'created') => formatter = "%Y-%m-%d %H:%M" [com.webobjects.directtoweb.Assignment]
>> 100 : (entity.name = 'ERCAuditTrailEntry' and propertyKey = 'keyPath') => componentName = "ELD2WDisplayLocalizedString" [com.webobjects.directtoweb.Assignment]
>> 100 : (entity.name = 'ERCAuditTrailEntry' and propertyKey = 'type.name') => componentName = "ELD2WDisplayLocalizedString" [com.webobjects.directtoweb.Assignment]
>> 100 : (entity.name = 'Product' and propertyKey = 'auditTrail.entries') => componentName = "ERDList" [com.webobjects.directtoweb.Assignment]
>> 100 : (entity.name = 'Product' and propertyKey = 'auditTrail.entries') => listConfigurationName = "ListEmbeddedERCAuditTrailEntry" [com.webobjects.directtoweb.Assignment]
>> 100 : pageConfiguration = 'ListEmbeddedERCAuditTrailEntry' => defaultSortOrdering = ("created", "compareDescending") [com.webobjects.directtoweb.Assignment]
>> 120 : pageConfiguration = 'ListEmbeddedERCAuditTrailEntry' => displayPropertyKeys = ("created", "type.name", "keyPath", "oldValues", "newValues", "user.fullName") [com.webobjects.directtoweb.Assignment]
>>
>> ELD2WDisplayLocalizedString extends ERD2WDisplayString and localizes the property value.
>>
>> Fabian
>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list (email@hidden)
>>> Help/Unsubscribe/Update your Subscription:
>>>
>>> This email sent to email@hidden
>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden