Я не разработчик Java, но моя компания покупает продукт для обработки своих учетных записей на основе java. Теперь я столкнулся с проблемой, потому что они хотят предотвратить повторные счета-фактуры в системе, и программное обеспечение позволяет пользователю это делать. Я вызвал поддержку, и они предложили мне создать подавленное поле на стороне клиента, скопировать в это поле сообщение, которое я хочу показать, и прочитать это поле, когда вкладка пользователя в следующее поле. это много шагов и полностью неэффективны. Ниже мой код основан на том, что они предложили. В настоящее время я указал, что сообщение существует два раза.Как я могу показать сообщение с сервера?
стороне сервера
CSServer.log (Step)
if ((CSEvent.getTarget().getName() == "InvoiceNumber") && (CSEvent.getAction() == "Tabout") && (Step == 0))
{
if (!cnn)
{
CSServer.log ("GPCONNECT Lookup::CSForm_OnValidateLookup Connection to the database failed");
}
else
{
Sql = "SELECT COUNT (*) as Result FROM [DYNAMICS].[dbo].[AP_Invoice_Table] WHERE [VendorID] = '" + CSForm.getField("VendorID").getValue() + "' and [DocumentNumber] = '" + CSForm.getField("InvoiceNumber").getValue()+"'";
resultInvSet = cnn.executeSQL(Sql);
var x =null;
x = resultInvSet.getValue("Result");
}
if (x > 0)
{
CSForm.getField("msg").setValue("Invoice number already exist, please check your entry!");
return false;
}
else
{
CSForm.getField("msg").setValue("");
}
}
стороне клиента
function InvoiceAmount_OnFocus()
{
var m =CSForm.getField('msg').getValue();
if (m != "")
{
$("#InvoiceNumber").focus();
CSClient.alert(m);
CSForm.getField("InvoiceNumber").setFillColor("FF0000");
}
else
{
CSForm.getField("InvoiceNumber").setFillColor("FFFFFF");
}
return true;
}
Может кто-то пожалуйста, показал мне правильный способ справиться с этим?
Обновление: Клиент и сервер используют SOAP и HTTP-вызов для связи.
Вы можете сделать что-то подобное с помощью AJAX – Hackerman
Является ли это приложение с помощью SignalR или что-то подобное для двусторонней связи в реальном времени между сервером и клиентом? –
Хороший вопрос @HowardRenollet, позвольте мне попросить поддержать – cojimarmiami