Уважаемая Наталья!
Если из Вашего вопроса следует, что Вы увольняетесь 31 июля по собственному желанию, а новый рабочий год, за который предоставляется отпуск 28 календарных дней, полностью еще не отработали, то работодатель не обязан автоматически выплачивать компенсацию за все 28 дней отпуска.
Компенсация зависит не от того, что отпуск был включен в график с августа, а от количества месяцев, входящих в рабочий год, дающий право на отпуск.
Если к моменту увольнения Вы отработали менее 11 месяцев нового рабочего года, то компенсация рассчитывается пропорционально отработанному времени. Поэтому ситуация, когда работодатель начисляет компенсацию, например, за 21 день, сама по себе не свидетельствует о нарушении закона.
Полная компенсация за отпуск выплачивается работнику, который отработал не менее 11 месяцев рабочего года, либо в отдельных случаях увольнения, перечисленных в п. 28 Правил, утвержденных НКТ СССР от 30.04.1930 № 169 (ликвидация, сокращение, призыв на военную службу и др.). При увольнении по собственному желанию эти исключения не применяются.
Чтобы точно определить, прав ли работодатель, необходимо знать дату приема на работу либо дату начала Вашего текущего рабочего года (например, с какого числа исчисляется отпускной год). Только после этого можно рассчитать, сколько дней компенсации Вам действительно положено — 21, 28 или иное количество.
Вывод: работодатель может быть как прав, так и неправ.
Само по себе увольнение перед отпуском не означает, что должна быть выплачена компенсация именно за 28 календарных дней. Всё зависит от того, сколько месяцев рабочего года Вы отработали к дате увольнения.