Remove marked for delete Commerce Composer layouts
You can run the CleanPageLayoutsCmdImpl command to remove layouts from the database that business users delete. When a business user deletes a layout with the Commerce Composer tool, the layout is removed from the tool and store pages, but not from the database. The layout is only marked for delete in the database. As an administrator, run the CleanPageLayoutsCmdImpl command as a scheduled job to clean up the database by removing any layouts that are marked for delete.
When business users delete layouts in the Commerce Composer
tool, the Commerce Composer framework removes the layouts from Management
Center. The framework also updates the PAGELAYOUT database
table to set the value of the STATE column to be 2
for
the layout the business user deleted. By changing the state of the
layout, the framework marks the layout for deletion when a cleanup
utility or job runs. When a scheduled job that invokes the CleanPageLayoutsCmdImpl command
runs, any layout with a value of 2
in the STATE column
is deleted from the database. The command also invokes the delete
method of the appropriate widget manager class to clean up any widget
data specific for the layout. The cleanup process maintains the referential
integrity of your database as the job deletes the layout and widget
data.
Alternatively,
you can use the Data Load utility to delete layout information from
the database. To delete a layout with this utility, you can use an
input CSV that identifies the layout information and includes a value
of 1
for the DELETE column. For more information
about creating this kind of CSV file, see layout input file. To delete layouts with this method,
you must identify each layout to be deleted within the CSV file. If
you run a scheduled job that invokes the CleanPageLayoutsCmdImpl command,
all layouts marked for delete are removed. If your database includes
multiple layouts that are marked for delete, running the scheduled
job can take less time.
Clean page layout scheduled job configuration
- WC_eardir/xml/config/com.ibm.commerce.pagelayout/wc-admin-component.xml
- WC_eardir\xml\config\com.ibm.commerce.pagelayout\wc-admin-component.xml
"cleanMarkedForDelete"
configuration
property to "Y"
to have the job remove layouts that
are marked for delete. You can also configure the job to also delete
layouts that are inactive for longer that a specified number of days
with the "daysExpiredToDelete
configuration property.
By default, the value for this property is "60"
days.
Your configured CleanPageLayouts
job, can resemble
the following code:<_config:configgrouping name="CleanPageLayouts">
<!-- The property to configure the number of days that the page layout can be cleaned after it expired. -->
<_config:property name="daysExpiredToDelete" value="60" />
<!-- The property to configure whether to clean the page layouts that are marked for delete.
Y, clean the page layouts that are marked for delete.
N, do NOT clean the page layouts that are marked for delete.
-->
<_config:property name=cleanMarkedForDelete" value="Y"/>
</_config:configgrouping>
When this scheduled
job runs, the widget data for the layout deletes first, then any layout
assignment data that exists, before the job deletes the layout data.
When the CleanPageLayouts
process uses the WidgetManagementService.delete
method
to delete widget information, the method can delete the e-Marketing
Spot used with the widget. If your widget includes an e-Marketing
Spot, the e-Marketing Spot is deleted only if the e-Marketing Spot
was created and managed with the Commerce Composer tool. To determine
whether the e-Marketing Spot for a widget is created and managed with
this tool, review the widget definition XML for the widget within
the PROPERTIES column of the PLWIDGETNVP database table.
If the widget definition XML contains the requireEMS
property
with a value of true
, an e-Marketing Spot is created
and managed with the Commerce Composer tool. If the e-Marketing Spot
for the widget includes title content, this content is also deleted.
e-Marketing Spots that are created and managed within the Marketing
tool are not deleted.