Files
abap/abaplint_solutions.json
2022-10-14 14:42:56 +02:00

465 lines
12 KiB
JSON

{
"global": {
"files": "{/exercises/practice/**/*.testclasses.abap,/exercises/practice/**/.meta/*.abap,/exercises/concept/**/*.testclasses.abap,/exercises/concept/**/.meta/*.abap}",
"skipGeneratedGatewayClasses": true,
"skipGeneratedPersistentClasses": true,
"skipGeneratedFunctionGroups": true,
"useApackDependencies": false,
"skipIncludesWithoutMain": false
},
"dependencies": [
{
"url": "https://github.com/open-abap/open-abap",
"files": "/src/**/*.*"
}
],
"syntax": {
"version": "v754",
"errorNamespace": "."
},
"rules": {
"7bit_ascii": true,
"abapdoc": false,
"allowed_object_naming": true,
"allowed_object_types": true,
"ambiguous_statement": true,
"avoid_use": true,
"begin_end_names": true,
"begin_single_include": true,
"call_transaction_authority_check": true,
"chain_mainly_declarations": true,
"check_abstract": true,
"check_comments": {
"exclude": [],
"severity": "Error",
"allowEndOfLine": false
},
"check_ddic": true,
"check_include": true,
"check_no_handler_pragma": true,
"check_subrc": true,
"check_syntax": true,
"check_text_elements": true,
"check_transformation_exists": true,
"class_attribute_names": false,
"cloud_types": true,
"colon_missing_space": true,
"commented_code": true,
"constant_classes": true,
"constructor_visibility_public": true,
"contains_tab": true,
"cyclic_oo": {
"exclude": [],
"severity": "Error",
"skip": []
},
"cyclomatic_complexity": {
"exclude": [],
"severity": "Error",
"max": 20
},
"dangerous_statement": {
"exclude": [],
"severity": "Error",
"execSQL": true,
"kernelCall": true,
"systemCall": true,
"insertReport": true,
"generateDynpro": true,
"generateReport": true,
"generateSubroutine": true,
"deleteReport": true,
"deleteTextpool": true,
"deleteDynpro": true,
"importDynpro": true
},
"db_operation_in_loop": true,
"definitions_top": false,
"description_empty": false,
"double_space": true,
"downport": true,
"empty_line_in_statement": {
"exclude": [],
"severity": "Error",
"allowChained": false
},
"empty_statement": true,
"empty_structure": true,
"exit_or_check": true,
"exporting": true,
"forbidden_identifier": {
"exclude": [],
"severity": "Error",
"check": []
},
"forbidden_pseudo_and_pragma": {
"exclude": [],
"severity": "Error",
"pseudo": [],
"pragmas": [],
"ignoreGlobalClassDefinition": false,
"ignoreGlobalInterface": false
},
"forbidden_void_type": {
"exclude": [],
"severity": "Error",
"check": []
},
"form_tables_obsolete": true,
"fully_type_constants": {
"exclude": [],
"severity": "Error",
"checkData": true
},
"function_module_recommendations": {
"exclude": [],
"severity": "Error",
"recommendations": [
{
"name": "SUBST_GET_FILE_LIST",
"replace": "see note 1686357"
},
{
"name": "ROUND",
"replace": "use built in function: round()"
},
{
"name": "SO_NEW_DOCUMENT_ATT_SEND_API1",
"replace": "use CL_BCS"
},
{
"name": "ECATT_CONV_XSTRING_TO_STRING",
"replace": "use CL_BINARY_CONVERT"
},
{
"name": "SCMS_STRING_TO_XSTRING",
"replace": "use CL_BINARY_CONVERT"
},
{
"name": "JOB_CREATE",
"replace": "use CL_BP_ABAP_JOB"
},
{
"name": "JOB_SUBMIT",
"replace": "use CL_BP_ABAP_JOB"
},
{
"name": "GUI_DOWNLOAD",
"replace": "use CL_GUI_FRONTEND_SERVICES"
},
{
"name": "GUI_UPLOAD",
"replace": "use CL_GUI_FRONTEND_SERVICES"
},
{
"name": "WS_FILENAME_GET",
"replace": "use CL_GUI_FRONTEND_SERVICES"
},
{
"name": "F4_FILENAME",
"replace": "use CL_GUI_FRONTEND_SERVICES"
},
{
"name": "SAPGUI_PROGRESS_INDICATOR",
"replace": "use CL_PROGRESS_INDICATOR"
},
{
"name": "GUID_CREATE",
"replace": "use CL_SYSTEM_UUID"
},
{
"name": "SSFC_BASE64_DECODE",
"replace": "use class CL_HTTP_UTILITY methods"
},
{
"name": "SSFC_BASE64_ENCODE",
"replace": "use class CL_HTTP_UTILITY methods"
},
{
"name": "SCMS_BASE64_DECODE_STR",
"replace": "use class CL_HTTP_UTILITY methods"
},
{
"name": "POPUP_TO_DECIDE",
"replace": "use POPUP_TO_CONFIRM"
},
{
"name": "REUSE_ALV_GRID_DISPLAY",
"replace": "use CL_SALV_TABLE=>FACTORY or CL_GUI_ALV_GRID"
},
{
"name": "CALCULATE_HASH_FOR_RAW",
"replace": "use CL_ABAP_HMAC"
},
{
"name": "FUNCTION_EXISTS",
"replace": "surround with try-catch CX_SY_DYN_CALL_ILLEGAL_METHOD instead"
}
]
},
"functional_writing": {
"exclude": [],
"severity": "Error",
"ignoreExceptions": true
},
"global_class": true,
"identical_conditions": true,
"identical_contents": true,
"identical_descriptions": true,
"identical_form_names": true,
"if_in_if": false,
"implement_methods": true,
"in_statement_indentation": {
"exclude": [],
"severity": "Error",
"blockStatements": 2,
"ignoreExceptions": true
},
"indentation": {
"exclude": [],
"severity": "Error",
"ignoreExceptions": true,
"alignTryCatch": false,
"selectionScreenBlockIndentation": false,
"globalClassSkipFirst": false,
"ignoreGlobalClassDefinition": false,
"ignoreGlobalInterface": false
},
"inline_data_old_versions": true,
"intf_referencing_clas": {
"exclude": [],
"severity": "Error",
"allow": []
},
"keep_single_parameter_on_one_line": {
"exclude": [],
"severity": "Error",
"length": 120
},
"keyword_case": {
"exclude": [],
"severity": "Error",
"style": "upper",
"ignoreExceptions": true,
"ignoreLowerClassImplmentationStatement": true,
"ignoreGlobalClassDefinition": false,
"ignoreGlobalInterface": false,
"ignoreFunctionModuleName": false,
"ignoreGlobalClassBoundaries": false,
"ignoreKeywords": []
},
"line_break_multiple_parameters": false,
"line_break_style": false,
"line_length": {
"exclude": [],
"severity": "Error",
"length": 120
},
"line_only_punc": {
"exclude": [],
"severity": "Error",
"ignoreExceptions": true
},
"local_class_naming": {
"exclude": [],
"severity": "Error",
"patternKind": "required",
"ignoreNames": [],
"ignorePatterns": [],
"local": "^LCL_.+$",
"exception": "^LCX_.+$",
"test": "^LT.+$"
},
"local_testclass_location": true,
"local_variable_names": false,
"main_file_contents": true,
"many_parentheses": true,
"max_one_method_parameter_per_line": true,
"max_one_statement": true,
"message_exists": true,
"method_implemented_twice": true,
"method_length": false,
"method_overwrites_builtin": true,
"method_parameter_names": false,
"mix_returning": true,
"modify_only_own_db_tables": {
"exclude": [],
"severity": "Error",
"reportDynamic": true,
"ownTables": "^[yz]"
},
"msag_consistency": true,
"names_no_dash": true,
"nesting": false,
"newline_between_methods": {
"exclude": [],
"severity": "Error",
"count": 3,
"logic": "less"
},
"no_public_attributes": {
"exclude": [],
"severity": "Error",
"allowReadOnly": false
},
"object_naming": {
"exclude": [],
"severity": "Error",
"patternKind": "required",
"ignoreNames": [],
"ignorePatterns": [],
"clas": "^ZC(L|X)",
"intf": "^ZIF",
"prog": "^Z",
"fugr": "^Z",
"tabl": "^Z",
"ttyp": "^Z",
"dtel": "^Z",
"doma": "^Z",
"msag": "^Z",
"tran": "^Z",
"enqu": "^EZ",
"auth": "^Z",
"pinf": "^Z",
"idoc": "^Z",
"xslt": "^Z",
"ssfo": "^Z",
"ssst": "^Z",
"shlp": "^Z"
},
"obsolete_statement": {
"exclude": [],
"severity": "Error",
"refresh": true,
"compute": true,
"add": true,
"subtract": true,
"multiply": true,
"divide": true,
"move": true,
"requested": true,
"occurs": true,
"setExtended": true,
"withHeaderLine": true,
"fieldSymbolStructure": true,
"typePools": true,
"load": true,
"parameter": true,
"ranges": true,
"communication": true,
"pack": true,
"selectWithoutInto": true,
"freeMemory": true,
"exitFromSQL": true,
"sortByFS": true,
"callTransformation": true,
"regex": true
},
"omit_parameter_name": true,
"omit_receiving": true,
"parser_702_chaining": true,
"parser_error": true,
"parser_missing_space": true,
"pragma_placement": true,
"prefer_inline": false,
"prefer_is_not": true,
"prefer_raise_exception_new": false,
"prefer_returning_to_exporting": true,
"prefer_xsdbool": true,
"preferred_compare_operator": {
"exclude": [],
"severity": "Error",
"badOperators": [
"EQ",
"><",
"NE",
"GE",
"GT",
"LT",
"LE"
]
},
"prefix_is_current_class": {
"exclude": [],
"severity": "Error",
"omitMeInstanceCalls": true
},
"reduce_string_templates": true,
"release_idoc": true,
"remove_descriptions": {
"exclude": [],
"severity": "Error",
"ignoreExceptions": false,
"ignoreWorkflow": true
},
"rfc_error_handling": true,
"select_add_order_by": true,
"select_performance": {
"exclude": [],
"severity": "Error",
"endSelect": true,
"selectStar": true,
"starOkayIfFewColumns": 10
},
"selection_screen_naming": {
"exclude": [],
"severity": "Error",
"patternKind": "required",
"ignoreNames": [],
"ignorePatterns": [],
"parameter": "^P_.+$",
"selectOption": "^S_.+$"
},
"sequential_blank": {
"exclude": [],
"severity": "Error",
"lines": 4
},
"short_case": {
"exclude": [],
"severity": "Error",
"length": 1,
"allow": []
},
"sicf_consistency": true,
"space_before_colon": true,
"space_before_dot": {
"exclude": [],
"severity": "Error",
"ignoreGlobalDefinition": true,
"ignoreExceptions": true
},
"sql_escape_host_variables": true,
"start_at_tab": true,
"superclass_final": true,
"sy_modification": true,
"tabl_enhancement_category": true,
"try_without_catch": true,
"type_form_parameters": true,
"types_naming": false,
"uncaught_exception": true,
"unknown_types": true,
"unreachable_code": true,
"unsecure_fae": true,
"unused_ddic": true,
"unused_methods": true,
"unused_types": {
"exclude": [],
"severity": "Error",
"skipNames": []
},
"unused_variables": {
"exclude": [],
"severity": "Error",
"skipNames": []
},
"use_bool_expression": true,
"use_class_based_exceptions": true,
"use_line_exists": false,
"use_new": true,
"when_others_last": true,
"whitespace_end": true,
"xml_consistency": true
}
}