| Summary: | Web-User-Daten nicht immer eindeutig | ||
|---|---|---|---|
| Product: | [SCX/Suite] VMI | Reporter: | Hopmann, Peter <Peter.Hopmann> |
| Component: | Stammdatenpflege | Assignee: | Hopmann, Peter <Peter.Hopmann> |
| Status: | VERIFIED FIXED | QA Contact: | Tilli, Benedikt <Benedikt.Tilli> |
| Severity: | minor | ||
| Priority: | P3 | Keywords: | Pegasus, Vorabkorrektur |
| Version: | 19.0 | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | Überprüft 21.0 | ||
| Kundennummer: | Bestellnummer: | ||
| PV Übergabe: | --- | Phase Roadmap: | --- |
| Erledigt mit: | Pegasus | SAP Release: | --- |
| Transport: | E74K907301, FE0K903707, M50K900045, M60K900042, M39K901612, M49K901601 | CRM-ID/Ticket: | |
|
Description
Hopmann, Peter
2020-01-24 07:42:02 CET
/GIB/CL_DCV_WEB_USER
METHOD check_data.
DATA: ls_double TYPE /gib/dcvt010,
lf_dummy TYPE c,
lr_msg TYPE REF TO /gib/cl_dcv_error_msg.
DATA: lf_email TYPE /gib/dcvt010-email, "hw11355
lf_objectid TYPE /gib/dcvt010-objectid. "hw11355
FIELD-SYMBOLS: <ls_data> TYPE /gib/dcvt010v_s.
ASSIGN mr_data->* TO <ls_data>.
er_result = super->check_data( ).
CREATE OBJECT lr_msg.
*# email vorhanden?
IF <ls_data>-email = space.
MESSAGE w166 WITH <ls_data>-username INTO lf_dummy.
lr_msg->sy_set( ).
er_result->add_error( ir_msg = lr_msg
if_fieldname = 'EMAIL' ).
ENDIF.
*# doublette?
*#11355
* SELECT SINGLE * FROM /gib/dcvt010 INTO ls_double "#EC CI_NOORDER
* WHERE email = <ls_data>-email
* AND username <> <ls_data>-username.
lf_email = <ls_data>-email.
TRANSLATE lf_email TO UPPER CASE.
SELECT SINGLE * FROM /gib/dcvt010 INTO ls_double "#EC CI_NOORDER
WHERE ( email = <ls_data>-email
OR username = lf_email "in upper case
OR username = <ls_data>-objectid )
AND username <> <ls_data>-username .
IF sy-subrc <> 0.
lf_email = <ls_data>-username. "existing email as new username
TRANSLATE lf_email TO LOWER CASE.
SELECT SINGLE * FROM /gib/dcvt010 INTO ls_double "#EC CI_NOORDER
WHERE email = lf_email
AND username <> <ls_data>-username .
ENDIF.
IF sy-subrc <> 0
AND <ls_data>-username CO '0123456789 '. "existing ID as new username
lf_objectid = <ls_data>-username.
SELECT SINGLE * FROM /gib/dcvt010 INTO ls_double "#EC CI_NOORDER
WHERE objectid = lf_objectid
AND username <> <ls_data>-username .
ENDIF.
*##113555
IF sy-subrc = 0.
MESSAGE e165 WITH ls_double-email ls_double-username <ls_data>-username INTO lf_dummy.
lr_msg->sy_set( ).
er_result->add_error( ir_msg = lr_msg
if_fieldname = 'EMAIL' ).
ENDIF.
ENDMETHOD.
|