/*******************************************************************************
*                                                                              *
*   ���W���[������      �F�`�F�b�N�A�E�g�R�}���h���s                           *
*   ���W���[�����x��    �Fcheckout_run                                         *
*   �^�X�N�敪          �F�A�v���P�[�V�����^�X�N                               *
*   �@�\                �F                                                     *
*   �R�[�����O�V�[�P���X�Fvoid checkout_run(void)                              *
*   ����                �Fvoid                                                 *
*   �߂�l              �Fvoid                                                 *
*   �g�p��̒���        �F�Ȃ�                                                 *
*   �G���[����          �F�Ȃ�                                                 *
*                                                                              *
*   (APP16�����T���v���R�[�h�ł�)                                              *
*                                                                              *
*******************************************************************************/
#include "chkout.h"     /* �`�F�b�N�A�E�g�A�v����` */

void checkout_run(void)
{
    unsigned short us_planCount_size;   /* �R�}���h�T�C�Y����Z�o����CheckOut Plan�i�[�� */
    unsigned short us_planCount_cmd;    /* �R�}���h�f�[�^����擾����CheckOut Plan�i�[�� */
    unsigned short us_planCount;        /* �ŏI�I��CheckOut Plan�i�[�� */
    unsigned short us_planNo;           /* ��������Plan�ԍ� */
    
    
    /* �f�[�^���Z�b�g�i�e�����g���֘A���j */
    checkout_resetData();
    
    /* �R�}���h�T�C�Y�ƃR�}���h�f�[�^��PlanCount���r���A�����������̗p */
    us_planCount_size = (( Gi_cmdSize / 4 ) - d_CO_PLAN_OFFSET_I ) / d_CO_PLAN_SIZE_I;
    us_planCount_cmd  = Gu_co_cmdBuff[2].us[1];
    us_planCount = (us_planCount_cmd <= us_planCount_size ) ? us_planCount_cmd : us_planCount_size;
    
    /* PLANCOUNT_MAX�𒴂�����ُ�R�}���h�Ɣ��f���A�������Ȃ� */
    us_planCount = (us_planCount <= d_CO_PLANCOUNT_MAX) ? us_planCount: 0;
    
    /* 1 Plan���“ǂݏo�� */
    for( us_planNo = 1; us_planNo <= us_planCount; us_planNo++ )
    {
        /* CheckOut Plan�擾 */
        checkout_getPlan( us_planNo );
        
        /* CheckOut���� */
        checkout_procCheckOut();
        
        /* CheckOut���ʊi�[ */
        checkout_setResult();
        
    }
    
    /* CheckOut�e�����g���o�� */
    checkout_putResult();
    
    return;
}