By default users submit their timesheet on a weekly basis. This works fine if companies bill on a weekly basis. For companies that bill on semi-month or full month then the semi month setting allows a user to submit their time for a partial week if the week falls on the middle of the month or end of the month. This allows the company to not have to wait until the end of the week to get submitted time.
Example is normally a user would only be able to submit time for Sunday April 12th to Saturday April 18th. If the partial week submit setting is on the user could then submit their time from Sunday April 12th to Wednesday April 15th. Then later at the end of the week the user could submit the second half of the week from April 16th to Saturday April 18th. This logic also applies on the end of the month.
Once this is enabled the a user can submit time at mid-month or on the end of the month.
Note: Partial time submissions can only be done by client. So when the popup shows as per the below screenshot you must select a client. By default "All Clients" is selected. Once a client is selected then the Date Range dropdown will display a partial week selection for the user to select.