cancel
Showing results for 
Search instead for 
Did you mean: 

CDN Social Insurance Number - enforce unqiue number

812

Hello,

For our US Employees we can enforce SAP S/4 so all employees must have a unique Social Security Number. We do this by using the PE03 feature SSNCK (Social Security Number Audit). We are looking for a way to enforce unique Social Insurance Numbers for our Canadian Employees. We want it to be a hard error like the US one.

Does anyone know how this can be done?

Paulina_Price
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Janice,

I'm not 100%, but one way I can think of is using Dynamic Actions with Function Module:

HR_CA_VERIFY_SI_NUMBER

Hope that helps.
View Entire Topic
siddharthrajora
Product and Topic Expert
Product and Topic Expert

it is done here

CL_HRPA_INFOTYPE_0002_CA, With the new infotype framework, the SIN validation is performed on METHOD AUDIT_SIN

did you maintain the feature for canada as well?

https://launchpad.support.sap.com/#/notes/2332745 IT0002: Incorrect error message for duplicated SIN when using new infotype framework

CLASS: CL_HRPA_INFOTYPE_0002_CA

METHOD: AUDIT_SIN

TRY.

HAS_EXCEPTION = FALSE.

CALL METHOD cl_hrpa_feature=>get_value

EXPORTING

feature = 'SSNCK'

struc_content = pme04

IMPORTING

return_value = SSNCK.

CATCH CX_HRPA_VIOLATED_ASSERTION.

HAS_EXCEPTION = TRUE.

ENDTRY.

IF SSNCK = 'N' AND HAS_EXCEPTION = FALSE. EXIT. ENDIF.

0 Kudos

Thank-you Siddharth! I do see this class/method. And I had maintained the feature for Canada. I put a breakpoint at the start of the method AUDIT_SIN and it does not seem to fall into the method at all -not sure why

ChrisSolomon
Active Contributor

Janice....check infotype configuration (specifically in the Decoupled Infotype Framework...DCIF.... section) and check that you have the use of DCIF turned "on" for that infotype. I forget the exact node but you essentially will configure if it is "on", "only in ESS/HCM Processes and Forms" or "off".

Thank-you Christopher! Turns out it was my mistake - I had set a different user as the external debugger :(. The breakpoint works now