When creating new files in the model, getting the message ID Y2V0215 - "Duplicate File Prefix specified - same as file" and unable to proceed:
CA 2E 8.7.3
This is an expected warning message in the case of a large model, as file prefixes are reused. That is a warning message, and it is information that this file prefix is already used in another file. It is expected, and we took this decision deliberately as we exhausted file prefixes. File prefix reusability is okay and no problem in large models. But we only need to make sure that access paths and record format names are unique across all the multi-models.
For that, you need to query the YACPDTARFP, YACPFMTRFP, and YMSGDTARFP files in all models and look for the source member file names field as discussed in yesterday's call, and make sure they are unique.
2E naming allocation logic:
Formula For access paths: YOBJPFX model value (two letters) + File prefix (two letters from YALCVNMRFP-FIL) + RE/CT (RE for REF files and CT for CPT file types) + P/L (one-letter Suffix from 'EDIT GENERATION TYPES')
Formula for Record formats: one-letter prefix from 'EDIT GENERATION TYPES' + file prefix (two letters from YALCVNMRFP-FIL) + RE/CT + Format mnemonic (two letters from YALCVNMRFP-FMT).
Formula For functions: YOBJPFX model value (two letters) + Function mnemonic (two letters from YALCVNMRFP-MSG) + Function type (DF for display file, EF for EDTFIL, like that) + R/K (R for RPGLE, K for Cobol) + D (D for display file)
So we need to query the YACPDTARFP, YACPFMTRFP, and YMSGDTARFP source generation name fields and decide the unique values for YOBJPFX and one-letter Suffix for 'EDIT GENERATION TYPES' and the one-letter prefix from 'EDIT GENERATION TYPES.'
Steps for configuration change:
1) Change the YOBJPFX model value by YCHGMDLVAL. (This step will make the access path and the function source name unique.)
To decide the YOBJPFX value, use the query below on ALL MODELS and decide the value:
Execute the above query on ALL MODELS and take the prefix that does NOT exist in the above values.
2) Change the prefix and suffix from 'EDIT GENERATION TYPES' for PHY, LGL, PHY FMT, and LGL FMT
Note:
A) 'EDIT GENERATION TYPES' can be accessed by typing YDSPMDLVAL > Option 3 "Display Name allocation values" > navigate to the "NAME ALLOCATION VALUES" screen > in that screen take F10 > 'EDIT GENERATION TYPES'
B) To decide on PHY and LGL suffix values in the 'EDIT GENERATION TYPES' screen for access paths, use the below query on ALL MODELS and decide on the value that does NOT exist in the below list:
'EDIT GENERATION TYPES'
SELECT distinct substr( trim( SRCMBR ) , 7 , 1 ) FROM yacpdtarfp
Note: This B step is for access paths. So it is OPTIONAL if you do the changing of YOBJPFX. because the YOBJPFX change makes the access path name and function name unique.
C) Mandatory step for Formats: To decide the 'PHY FMT' and 'LGL FMT' prefix values in the 'EDIT GENERATION TYPES' screen for record formats, use the below query on ALL MODELS and decide the value that is not in the below list:
SELECT distinct substr( FMTVNM , 1 , 1 ) FROM yacpfmtrfp
3) Once this is done, then change the YALCVNMRFP file in the common library by changing the FIL, FMT, and MSG mnemonics to AA.
This is the solid approach for reusing the file prefixes. Whenever you do file prefix changes or exhaust file prefixes, we need to follow this approach.
Note: This workaround was developed to be compatible with the current release of 2E 8.7 within a specific environment. However slight, there exists a possibility that this workaround might not be appropriate to your situation or that it has been superseded. Do not attempt this procedure without confirmation from Broadcom Technical Support
We strongly recommend that you BACKUP your model before attempting this or any workaround. We cannot accept responsibility for improperly executed or outdated procedures.