как сбросить пароль в SAP используя BAPI?
Я пытаюсь сбросить пароль для SAP с помощью BAPI, но я получаю сообщение об ошибке, поскольку «пароль не является типом ввода поля».
Я публикую свой код ниже.
ВотgetRandomString()
пользовательская функция Я скопировал этот код из Интернета, и я не знаю об этом.
String newPassword = getRandomString();
try{
JCO.Function bapiUserChange = repository.getFunctionTemplate("BAPI_USER_CHANGE").getFunction();
if(bapiUserChange != null){
JCO.ParameterList userChangeInput = bapiUserChange.getImportParameterList();
JCO.Structure sPassword = userChangeInput.getStructure("PASSWORD");
//sPassword.setValue(newPassword, ????) //what do I assign it to?
userChangeInput.setValue(userId, "USERNAME");
userChangeInput.setValue(newPassword, "PASSWORD"); // this gives an error
userChangeInput.setValue("X","PASSWORDX"); //I know "X" is true, this will give an error too I believe
mConnection.execute(bapiUserChange);
//send E-mail
boolean emailSent = sendEmail(userId, newPassword, "XXX200");
msgMgr.reportSuccess("Password Reset Done");
if(mConnection != null){
mConnection.disconnect();
}
}
}catch(Exception e){
msgMgr.reportException("Could not change password " + e.getMessage(),true);
}
ноString newPassword = getRandomString();
здесь это дает ошибку, потому чтоgetRandomString()
это пользовательская функция, и я не знаю об этом. Есть ли какая-либо роль этого при сбросе пароля, или я могу напрямую использоватьString newpassword=" ";