Automattic\WooCommerce\Admin

ReportsSync::regenerate_report_datapublic staticWC 1.0

Regenerate data for reports.

Method of the class: ReportsSync{}

Returns

String.

Usage

$result = ReportsSync::regenerate_report_data( $days, $skip_existing );
$days(int|true|false) (required)
Number of days to import.
$skip_existing(true|false) (required)
Skip existing records.

ReportsSync::regenerate_report_data() code WC 11.0.1

public static function regenerate_report_data( $days, $skip_existing ) {
	if ( self::is_importing() ) {
		return new \WP_Error( 'wc_admin_import_in_progress', __( 'An import is already in progress. Please allow the previous import to complete before beginning a new one.', 'woocommerce' ) );
	}

	self::reset_import_stats( $days, $skip_existing );
	// A full (non-windowed) import covers the orders whose failed-import
	// records were dropped due to the storage cap, so reset the overflow
	// counter. Windowed imports may not reach those orders, so the counter
	// is kept to keep the UI warning accurate.
	if ( false === $days ) {
		OrdersScheduler::reset_failed_order_imports_overflow();
	}
	foreach ( self::get_schedulers() as $scheduler ) {
		$scheduler::schedule_action( 'import_batch_init', array( $days, $skip_existing ) );
	}

	/**
	 * Fires when report data regeneration begins.
	 *
	 * @param int|bool $days Number of days to import.
	 * @param bool     $skip_existing Skip existing records.
	 */
	do_action( 'woocommerce_analytics_regenerate_init', $days, $skip_existing );

	return __( 'Report table data is being rebuilt. Please allow some time for data to fully populate.', 'woocommerce' );
}