|
|
#2 |
|
Administrator
|
Жаль, что никто не ответил. Хотелось получить альтернативный взгляд на проблему
![]() Пока решил так: в методе FormLetterReport.loadPrintSettings() исправил строчку во вложенном методе setSettingDetail(): X++: void setSettingDetail(PrintMgmtDocInstanceType _type, SRSPrintDestinationSettings _defaultSettings) { ...... if (SysCountryRegionCode::isLegalEntityInCountryRegion([#isoRU])) { ...... } else { // </GEERU> /* printSettingDetail.parmReportFormatName(PrintMgmtReportFormat::findSystem(this.getPrintMgmtDocumentType()).Name); */ printSettingDetail.parmReportFormatName(getReportFormatName(_type)); // <GEERU> } ...... } X++: PrintMgmtReportFormatName getReportFormatName(PrintMgmtDocInstanceType _type)
{
PrintMgmtPrintContext printContext = new PrintMgmtPrintContext();
container printSettingPacked;
PrintMgmtPrintSetting printSetting;
int detailPosition;
printContext.parmDefaultOriginalPrintJobSettings(printMgmtReportRun.parmDefaultOriginalPrintJobSettings());
printContext.parmDefaultCopyPrintJobSettings(printMgmtReportRun.parmDefaultCopyPrintJobSettings());
printContext.parmLanguageId(_languageId);
printContext.parmQueryTableBuffer(_jourTable);
printContext.parmForcePrintJobSettings(printMgmtReportRun.parmForcePrintJobSettings());
printContext.setHierarchyContext(printMgmtReportRun.parmHierarchyType(), printMgmtReportRun.parmNodeType(), printMgmtReportRun.parmDocType(), _transTable);
// if code running on client, then make a server call to reduce RPC
if(isRunningOnServer())
{
printSetting = PrintMgmt::getSettings(printContext);
}
else
{
printSettingPacked = PrintMgmt::getSettings_Server(printContext.pack());
printSetting = new PrintMgmtPrintSetting();
printSetting.unpack(printSettingPacked);
}
for (detailPosition = 1; detailPosition <= printSetting.numDetails(); detailPosition++)
{
if (printSetting.getDetailByPos(detailPosition).parmType() == _type)
{
return printSetting.getDetailByPos(detailPosition).parmReportFormatName();
}
}
return PrintMgmtReportFormat::findSystem(this.getPrintMgmtDocumentType()).Name;
} Кроме того, у меня всё ещё теплится надежда, что Майкрософт своё решение предложит в каком-нибудь хотфиксе
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
|
|
| За это сообщение автора поблагодарили: Avalon (1). | |