diff --git a/IRP/src/Catalogs/ObjectLocations/Forms/ChoiceForm/Form.form b/IRP/src/Catalogs/ObjectLocations/Forms/ChoiceForm/Form.form
index 64a69c3344..bef60eae9e 100644
--- a/IRP/src/Catalogs/ObjectLocations/Forms/ChoiceForm/Form.form
+++ b/IRP/src/Catalogs/ObjectLocations/Forms/ChoiceForm/Form.form
@@ -442,8 +442,8 @@
Table
WHERE
-CASE WHEN &CityIsSet AND Table.IsFolder THEN
- Table.City = &City
+CASE WHEN &CityIsSet THEN
+ Table.City = &City OR Table.Parent.City = &City
ELSE
TRUE
END
@@ -490,6 +490,46 @@ END
PredefinedDataName
PredefinedDataName
+
+ Latitude
+ Latitude
+
+
+ Longitude
+ Longitude
+
+
+ DefaultPartner
+ DefaultPartner
+
+
+ AddAttributes
+ AddAttributes
+
+
+ Editor
+ Editor
+
+
+ NotActive
+ NotActive
+
+
+ SourceNodeID
+ SourceNodeID
+
+
+ Author
+ Author
+
+
+ ModifyDate
+ ModifyDate
+
+
+ CreateDate
+ CreateDate
+
CityIsSet
diff --git a/IRP/src/Catalogs/ObjectLocations/Forms/ItemForm/Form.form b/IRP/src/Catalogs/ObjectLocations/Forms/ItemForm/Form.form
index 5c9e890a0b..22b3822213 100644
--- a/IRP/src/Catalogs/ObjectLocations/Forms/ItemForm/Form.form
+++ b/IRP/src/Catalogs/ObjectLocations/Forms/ItemForm/Form.form
@@ -150,6 +150,56 @@
true
+
+ City
+ 19
+ true
+ true
+
+ true
+
+
+ Object.City
+
+
+ CityExtendedTooltip
+ 21
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ CityContextMenu
+ 20
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
Latitude
10
diff --git a/IRP/src/Catalogs/ObjectLocations/ObjectLocations.mdo b/IRP/src/Catalogs/ObjectLocations/ObjectLocations.mdo
index 409d272942..b23114ffc2 100644
--- a/IRP/src/Catalogs/ObjectLocations/ObjectLocations.mdo
+++ b/IRP/src/Catalogs/ObjectLocations/ObjectLocations.mdo
@@ -162,7 +162,7 @@
ShowError
Use
-
+
Use
diff --git a/IRP/src/Catalogs/ObjectStatuses/ObjectStatuses.mdo b/IRP/src/Catalogs/ObjectStatuses/ObjectStatuses.mdo
index f4a525e321..9696122fd0 100644
--- a/IRP/src/Catalogs/ObjectStatuses/ObjectStatuses.mdo
+++ b/IRP/src/Catalogs/ObjectStatuses/ObjectStatuses.mdo
@@ -147,96 +147,96 @@
SalesOrder
- 0
+ 1
true
SalesReturnOrder
- 0
+ 2
true
PurchaseOrder
- 0
+ 3
true
PurchaseReturnOrder
- 0
+ 4
true
InventoryTransferOrder
- 0
+ 5
true
OutgoingPaymentOrder
- 0
+ 6
true
ReconciliationStatement
- 0
+ 7
true
PhysicalCountByLocation
- 0
+ 8
true
Complete
- 0
+ 9
PhysicalInventory
- 0
+ 10
true
IncomingPaymentOrder
- 1
+ 11
true
ChequeBondTransaction
- 2
+ 12
true
ChequeBondIncoming
- 3
+ 13
true
ChequeBondOutgoing
- 4
+ 14
true
@@ -244,14 +244,22 @@
WorkOrder
- 5
+ 15
true
ProductionPlanningCorrection
- 6
+ 16
+
+ true
+
+
+ Issue
+
+
+ 17
true
diff --git a/IRP/src/CommonModules/CommonFunctionsServer/Module.bsl b/IRP/src/CommonModules/CommonFunctionsServer/Module.bsl
index 5abe9e5d13..5d0389a1fb 100644
--- a/IRP/src/CommonModules/CommonFunctionsServer/Module.bsl
+++ b/IRP/src/CommonModules/CommonFunctionsServer/Module.bsl
@@ -1700,6 +1700,27 @@ Function JoinTables(ArrayOfJoiningTables, Fields) Export
EndIf;
EndFunction
+// Table to structure.
+//
+// Parameters:
+// Table - ValueTable - Table
+//
+// Returns:
+// Array Of Structure
+Function TableToStructure(Table) Export
+ Array = New Array; // Array Of Structure
+
+ For Each Row In Table Do
+ Str = New Structure;
+ For Each Column In Table.Columns Do
+ Str.Insert(Column.Name, Row[Column.Name]);
+ EndDo;
+ Array.Add(Str);
+ EndDo;
+
+ Return Array;
+EndFunction
+
// Merge tables.
//
// Parameters:
diff --git a/IRP/src/CommonModules/DocIssueClient/Module.bsl b/IRP/src/CommonModules/DocIssueClient/Module.bsl
index f7551ab02c..4e3088d427 100644
--- a/IRP/src/CommonModules/DocIssueClient/Module.bsl
+++ b/IRP/src/CommonModules/DocIssueClient/Module.bsl
@@ -17,3 +17,13 @@ Procedure DateOnChange(Object, Form, Item) Export
EndProcedure
#EndRegion
+
+#Region STATUS
+
+Procedure StatusOnChange(Object, Form, Item) Export
+#If Not MobileClient Then
+ ViewClient_V2.StatusOnChange(Object, Form);
+#EndIf
+EndProcedure
+
+#EndRegion
\ No newline at end of file
diff --git a/IRP/src/CommonModules/DocIssueServer/Module.bsl b/IRP/src/CommonModules/DocIssueServer/Module.bsl
index 6be69059cb..a841098b10 100644
--- a/IRP/src/CommonModules/DocIssueServer/Module.bsl
+++ b/IRP/src/CommonModules/DocIssueServer/Module.bsl
@@ -2,43 +2,19 @@
Procedure OnCreateAtServer(Object, Form, Cancel, StandardProcessing) Export
DocumentsServer.OnCreateAtServer(Object, Form, Cancel, StandardProcessing);
- If Form.Parameters.Key.IsEmpty() Then
- SetGroupItemsList(Object, Form);
- DocumentsClientServer.ChangeTitleGroupTitle(Object, Form);
- EndIf;
ViewServer_V2.OnCreateAtServer(Object, Form, "");
EndProcedure
Procedure AfterWriteAtServer(Object, Form, CurrentObject, WriteParameters) Export
- DocumentsClientServer.ChangeTitleGroupTitle(CurrentObject, Form);
+ Return;
EndProcedure
Procedure OnReadAtServer(Object, Form, CurrentObject) Export
- If Not Form.GroupItems.Count() Then
- SetGroupItemsList(Object, Form);
- EndIf;
- DocumentsClientServer.ChangeTitleGroupTitle(CurrentObject, Form);
LockDataModificationPrivileged.LockFormIfObjectIsLocked(Form, CurrentObject);
EndProcedure
#EndRegion
-#Region _TITLE
-
-Procedure SetGroupItemsList(Object, Form)
- AttributesArray = New Array();
- AttributesArray.Add("City");
- AttributesArray.Add("Location");
- AttributesArray.Add("IssueType");
- DocumentsServer.DeleteUnavailableTitleItemNames(AttributesArray);
- For Each Attr In AttributesArray Do
- Form.GroupItems.Add(Attr, ?(ValueIsFilled(Form.Items[Attr].Title), Form.Items[Attr].Title,
- Object.Ref.Metadata().Attributes[Attr].Synonym + ":" + Chars.NBSp));
- EndDo;
-EndProcedure
-
-#EndRegion
-
#Region LIST_FORM
Procedure OnCreateAtServerListForm(Form, Cancel, StandardProcessing) Export
diff --git a/IRP/src/CommonModules/DocumentsClientServer/Module.bsl b/IRP/src/CommonModules/DocumentsClientServer/Module.bsl
index c499a531a5..65bd0bbd27 100644
--- a/IRP/src/CommonModules/DocumentsClientServer/Module.bsl
+++ b/IRP/src/CommonModules/DocumentsClientServer/Module.bsl
@@ -59,6 +59,10 @@ Procedure ChangeTitleGroupTitle(Object, Form, Settings = Undefined) Export
Return;
EndIf;
+ If Form.Items.Find("DecorationGroupTitleCollapsedLabel") = Undefined Then
+ Return;
+ EndIf;
+
ItemsArray = GetGroupItemsArray(Object, Form);
If Not ItemsArray.Count() Then
diff --git a/IRP/src/CommonModules/Localization/Module.bsl b/IRP/src/CommonModules/Localization/Module.bsl
index f31745127a..14c13695de 100644
--- a/IRP/src/CommonModules/Localization/Module.bsl
+++ b/IRP/src/CommonModules/Localization/Module.bsl
@@ -2286,6 +2286,9 @@ Strings.Insert("ExternalAccountingOperationExchangeReport", NStr("en = 'External
#Region Issue
Strings.Insert("Issue_1", NStr("en = 'Issues were already created for all locations.'", Lang));
Strings.Insert("Issue_2", NStr("en = 'Create issue for locations: %1?'", Lang));
+ Strings.Insert("Issue_3", NStr("en = 'Issue was created'", Lang));
+ Strings.Insert("Issue_4", NStr("en = 'Issue was canceled'", Lang));
+ Strings.Insert("Issue_5", NStr("en = 'Add new assignee'", Lang));
#EndRegion
Return Strings;
EndFunction
diff --git a/IRP/src/CommonModules/LoggerServerCall/LoggerServerCall.mdo b/IRP/src/CommonModules/LoggerServerCall/LoggerServerCall.mdo
new file mode 100644
index 0000000000..55bae0bf76
--- /dev/null
+++ b/IRP/src/CommonModules/LoggerServerCall/LoggerServerCall.mdo
@@ -0,0 +1,10 @@
+
+
+ LoggerServerCall
+
+ en
+ Log
+
+ true
+ true
+
diff --git a/IRP/src/CommonModules/LoggerServerCall/Module.bsl b/IRP/src/CommonModules/LoggerServerCall/Module.bsl
new file mode 100644
index 0000000000..c55f2103a1
--- /dev/null
+++ b/IRP/src/CommonModules/LoggerServerCall/Module.bsl
@@ -0,0 +1,182 @@
+// Add log.
+//
+// Parameters:
+// Basis - AnyRef - Basis
+// Comment - String - Comment
+// Manual - Boolean - Manual
+// NotifyUsers - Array Of CatalogRef.Users - Notify users
+// NotifySettings - See GetNotifySettings
+Procedure AddLog(Basis, Comment, Manual = False, NotifyUsers = Undefined, NotifySettings = Undefined) Export
+ SetPrivilegedMode(True);
+ NewRecord = InformationRegisters.Logger.CreateRecordManager();
+ NewRecord.Basis = Basis;
+ NewRecord.Comment = Comment;
+ NewRecord.ManualComment = Manual;
+ NewRecord.User = SessionParameters.CurrentUser;
+ NewRecord.TimeStamp = CurrentUniversalDateInMilliseconds();
+ NewRecord.Period = CurrentSessionDate();
+
+ NotifyID = String(New UUID);
+ If Not NotifyUsers = Undefined Then
+ NewRecord.NotifyID = NotifyID;
+ EndIf;
+
+ NewRecord.Write();
+
+ If Not NotifyUsers = Undefined Then
+ For Each User In NotifyUsers Do
+ NewNotify = InformationRegisters.LoggerNotification.CreateRecordManager();
+ NewNotify.NotifyID = NotifyID;
+ NewNotify.Basis = Basis;
+ NewNotify.User = User;
+ For Each Setting In NotifySettings Do
+ NewNotify[Setting.Key] = Setting.Value;
+ EndDo;
+ NewNotify.Write();
+ EndDo;
+ EndIf;
+
+ SetPrivilegedMode(False);
+EndProcedure
+
+// Change notify status.
+//
+// Parameters:
+// NotifyID - String - Notify ID
+// User - CatalogRef.Users - User
+// StatusName - String - Status name
+// Value - Boolean - Value
+Procedure ChangeNotifyStatus(NotifyID, User, StatusName, Value) Export
+ UpdateNotify = InformationRegisters.LoggerNotification.CreateRecordSet();
+ UpdateNotify.Filter.NotifyID.Set(NotifyID);
+ UpdateNotify.Filter.User.Set(User);
+ UpdateNotify.Read();
+ If UpdateNotify.Count() = 0 Then
+ Return;
+ EndIf;
+ UpdateNotify[0][StatusName] = Value;
+ UpdateNotify.Write();
+EndProcedure
+
+// Get notify settings.
+//
+// Returns:
+// Structure - Get notify settings:
+// * SendEmail - Boolean -
+// * WaitForOpenRef - Boolean -
+Function GetNotifySettings() Export
+ Str = New Structure;
+ Str.Insert("SendEmail", False);
+ Str.Insert("WaitForOpenRef", False);
+ Return Str;
+EndFunction
+
+// Send notifications.
+//
+// Parameters:
+// IntegrationSettings - CatalogRef.IntegrationSettings - Integration settings
+Procedure SendNotifications(IntegrationSettings) Export
+
+ NotifyData = GetNotifyData();
+
+ While NotifyData.Next() Do
+
+ If IsBlankString(NotifyData.User.Email) Then
+ Continue;
+ EndIf;
+
+ MessageInfo = GetMessageInfo(NotifyData.NotifyID);
+ If MessageInfo = Undefined Then
+ Continue;
+ EndIf;
+
+ Msg = EmailMessagesServer.GetMessageDescription();
+ Msg.Importance = InternetMailMessageImportance.High;
+ Msg.MailAccount = IntegrationSettings;
+ Msg.Subject = MessageInfo.Basis.Metadata().Synonym + " #" + MessageInfo.Basis.Number;
+ Msg.To.Add(NotifyData.User.Email);
+ Msg.Texts.Add(String(MessageInfo.User) + " (" + MessageInfo.Period + ")" + Chars.LF + MessageInfo.Comment);
+ EmailMessagesServer.SendMessage(Msg);
+
+ ChangeNotifyStatus(NotifyData.NotifyID, NotifyData.User, "Sended", True);
+ EndDo;
+
+EndProcedure
+
+Procedure CheckIfNeedSetOnOpen(Ref) Export
+ Query = New Query;
+ Query.Text =
+ "SELECT
+ | LoggerNotification.NotifyID
+ |FROM
+ | InformationRegister.LoggerNotification AS LoggerNotification
+ |WHERE
+ | LoggerNotification.WaitForOpenRef
+ | AND NOT LoggerNotification.RefOpened
+ | AND LoggerNotification.User = &User
+ | AND LoggerNotification.Basis = &Basis";
+ Query.Parameters.Insert("Basis", Ref);
+ Query.Parameters.Insert("User", SessionParameters.CurrentUser);
+ QueryResult = Query.Execute();
+
+ If Not QueryResult.IsEmpty() Then
+ NotifyID = QueryResult.Unload().UnloadColumn("NotifyID")[0];
+ ChangeNotifyStatus(NotifyID, SessionParameters.CurrentUser, "RefOpened", True);
+ EndIf;
+EndProcedure
+
+// Get message info.
+//
+// Parameters:
+// NotifyID - String - Notify ID
+//
+// Returns:
+// QueryResultSelection:
+// * Period - Date
+// * Basis - AnyRef
+// * Comment - String
+// * ManualComment - Boolean
+// * User - CatalogRef.Users
+Function GetMessageInfo(NotifyID)
+
+ Query = New Query;
+ Query.Text =
+ "SELECT
+ | Logger.Period,
+ | Logger.Basis,
+ | Logger.User,
+ | Logger.TimeStamp,
+ | Logger.Comment,
+ | Logger.ManualComment,
+ | Logger.NotifyID
+ |FROM
+ | InformationRegister.Logger AS Logger
+ |WHERE
+ | Logger.NotifyID = &NotifyID";
+
+ Query.SetParameter("NotifyID", NotifyID);
+
+ QueryResult = Query.Execute().Select();
+ If QueryResult.Next() Then
+ Return QueryResult;
+ EndIf;
+ Return Undefined;
+EndFunction
+
+Function GetNotifyData()
+ Query = New Query;
+ Query.Text =
+ "SELECT
+ | LoggerNotification.NotifyID,
+ | LoggerNotification.User
+ |FROM
+ | InformationRegister.LoggerNotification AS LoggerNotification
+ |WHERE
+ | LoggerNotification.SendEmail
+ | AND NOT LoggerNotification.Sended";
+
+ QueryResult = Query.Execute();
+
+ SelectionDetailRecords = QueryResult.Select();
+ Return SelectionDetailRecords
+EndFunction
diff --git a/IRP/src/CommonModules/ViewClient_V2/Module.bsl b/IRP/src/CommonModules/ViewClient_V2/Module.bsl
index e0cde206e5..9c4bef8914 100644
--- a/IRP/src/CommonModules/ViewClient_V2/Module.bsl
+++ b/IRP/src/CommonModules/ViewClient_V2/Module.bsl
@@ -4172,7 +4172,7 @@ EndProcedure
#Region STATUS
-Procedure StatusOnChange(Object, Form, TableNames) Export
+Procedure StatusOnChange(Object, Form, TableNames = "") Export
For Each TableName In StrSplit(TableNames, ",") Do
Parameters = GetSimpleParameters(Object, Form, TableName);
ControllerClientServer_V2.StatusOnChange(Parameters);
diff --git a/IRP/src/Configuration/Configuration.mdo b/IRP/src/Configuration/Configuration.mdo
index 9e7e491a7a..c1464e862d 100644
--- a/IRP/src/Configuration/Configuration.mdo
+++ b/IRP/src/Configuration/Configuration.mdo
@@ -488,6 +488,7 @@
Role.UseOutput
Role.Document_ELedgerRegistry
Role.Document_StockCorrection
+ Role.Logger
CommonTemplate.HTMLPictureSlider
CommonTemplate.HTMLAddAttributes
CommonTemplate.HTMLGallery
@@ -829,6 +830,7 @@
CommonModule.DocELedgerRegistryServer
CommonModule.DocStockCorrectionClient
CommonModule.DocStockCorrectionServer
+ CommonModule.LoggerServerCall
CommonAttribute.Author
CommonAttribute.Branch
CommonAttribute.Comment
@@ -960,6 +962,7 @@
DefinedType.typeBasisDocumentSalesInvoice
DefinedType.typeBatchDocuments
DefinedType.typeCashAdvanceBasises
+ DefinedType.typeChatObject
DefinedType.typeCurrencyRate
DefinedType.typeDescription
DefinedType.typeDescriptionsFillCheck
@@ -1234,6 +1237,7 @@
Document.DebitNote
Document.DecommissioningOfFixedAsset
Document.DepreciationCalculation
+ Document.ELedgerRegistry
Document.EmployeeCashAdvance
Document.EmployeeFiring
Document.EmployeeHiring
@@ -1291,6 +1295,7 @@
Document.ShipmentConfirmation
Document.StockAdjustmentAsSurplus
Document.StockAdjustmentAsWriteOff
+ Document.StockCorrection
Document.TaxesOperation
Document.TimeSheet
Document.Unbundling
@@ -1299,8 +1304,6 @@
Document.WorkOrder
Document.WorkOrderClosing
Document.WorkSheet
- Document.ELedgerRegistry
- Document.StockCorrection
DocumentJournal.DocumentsForIncomingPayment
DocumentJournal.DocumentsForOutgoingPayment
Enum.AccountingAnalyticTypes
@@ -1463,6 +1466,7 @@
DataProcessor.ScanBarcode
DataProcessor.StoreKeeperWorkspace
DataProcessor.SystemSettings
+ DataProcessor.Chat
InformationRegister.AddProperties
InformationRegister.AttachedFilesControl
InformationRegister.AttachedFiles
@@ -1560,6 +1564,8 @@
InformationRegister.PostedDocumentsRegistry
InformationRegister.T9052S_AccountingRelevance
InformationRegister.T9070S_ELedgerDetailComments
+ InformationRegister.Logger
+ InformationRegister.LoggerNotification
AccumulationRegister.CashInTransit
AccumulationRegister.R1001T_Purchases
AccumulationRegister.R1002T_PurchaseReturns
diff --git a/IRP/src/DataProcessors/Chat/Chat.mdo b/IRP/src/DataProcessors/Chat/Chat.mdo
new file mode 100644
index 0000000000..173ce70be2
--- /dev/null
+++ b/IRP/src/DataProcessors/Chat/Chat.mdo
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+ Chat
+
+ en
+ Chat
+
+ true
+ DataProcessor.Chat.Form.Form
+
+ Form
+
+ en
+ Form
+
+ PersonalComputer
+ MobileDevice
+
+
+ ChatHTML
+
+ en
+ Chat HTML
+
+ TextDocument
+
+
+ OpenChat
+
+ en
+ Chat
+
+ FormNavigationPanelGoTo
+
+ DefinedType.typeChatObject
+
+ Auto
+
+
diff --git a/IRP/src/DataProcessors/Chat/Commands/OpenChat/CommandModule.bsl b/IRP/src/DataProcessors/Chat/Commands/OpenChat/CommandModule.bsl
new file mode 100644
index 0000000000..fa52bc2182
--- /dev/null
+++ b/IRP/src/DataProcessors/Chat/Commands/OpenChat/CommandModule.bsl
@@ -0,0 +1,6 @@
+
+&AtClient
+Procedure CommandProcessing(CommandParameter, CommandExecuteParameters)
+ FormParameters = New Structure("Basis", CommandParameter);
+ OpenForm("DataProcessor.Chat.Form", FormParameters, CommandExecuteParameters.Source, CommandExecuteParameters.Uniqueness, CommandExecuteParameters.Window, CommandExecuteParameters.URL);
+EndProcedure
diff --git a/IRP/src/DataProcessors/Chat/Forms/Form/Form.form b/IRP/src/DataProcessors/Chat/Forms/Form/Form.form
new file mode 100644
index 0000000000..543b911724
--- /dev/null
+++ b/IRP/src/DataProcessors/Chat/Forms/Form/Form.form
@@ -0,0 +1,437 @@
+
+
+
+ GroupTop
+ 35
+
+ Basis
+ 37
+ true
+ true
+
+ true
+
+
+ Basis
+
+
+ BasisExtendedTooltip
+ 39
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ BasisContextMenu
+ 38
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ true
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ Update
+ 71
+ true
+ true
+
+ true
+
+
+ UpdateExtendedTooltip
+ 72
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+ UsualButton
+ Form.Command.Update
+ Auto
+ true
+ true
+ UserCmds
+ Auto
+
+ true
+ true
+
+ true
+
+
+ en
+ Group top
+
+
+ GroupTopExtendedTooltip
+ 36
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+ UsualGroup
+
+ HorizontalIfPossible
+ Auto
+ true
+ true
+ Auto
+ Auto
+
+
+
+ Chat
+ 73
+ true
+ true
+
+ true
+
+
+ Chat
+
+ None
+
+ ChatExtendedTooltip
+ 75
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ ChatContextMenu
+ 74
+ true
+ true
+
+ true
+
+ true
+
+ HTMLDocumentField
+ Enter
+ true
+ Left
+ true
+
+ 50
+ true
+ 10
+ true
+ true
+ true
+
+ Style.FormBackColor
+
+
+
+
+ GroupBottom
+ 45
+
+ NewMessage
+ 42
+ true
+ true
+
+ true
+
+
+ NewMessage
+
+ None
+
+ NewMessageExtendedTooltip
+ 44
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ NewMessageContextMenu
+ 43
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ SendMessage
+ 47
+ true
+ true
+
+ true
+
+
+ SendMessageExtendedTooltip
+ 48
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+ UsualButton
+ Form.Command.SendMessage
+ Auto
+ true
+ true
+ 2
+ true
+ UserCmds
+ Auto
+
+ true
+ true
+
+ true
+
+
+ en
+ Group bottom
+
+ 1
+
+ GroupBottomExtendedTooltip
+ 46
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+ UsualGroup
+
+ HorizontalIfPossible
+ Auto
+ true
+ true
+ Auto
+ Auto
+
+
+
+ FormCommandBar
+ -1
+ true
+ true
+
+ true
+
+ Left
+
+
+ OnCreateAtServer
+ OnCreateAtServer
+
+ true
+ true
+ Vertical
+ true
+ true
+ true
+ true
+
+ Object
+ 1
+
+ DataProcessorObject.Chat
+
+
+ true
+
+
+ true
+
+ true
+
+
+ Basis
+
+ en
+ Basis
+
+ 3
+
+ AnyRef
+
+
+ true
+
+
+ true
+
+
+
+ NewMessage
+
+ en
+ New message
+
+ 4
+
+ String
+
+
+
+ true
+
+
+ true
+
+
+
+ Chat
+
+ en
+ Chat
+
+ 9
+
+ String
+
+
+
+ true
+
+
+ true
+
+
+
+ SendMessage
+
+ en
+ Send
+
+ 1
+
+ Ctrl+Enter
+
+
+ SendMessage
+
+
+ Auto
+
+
+ Update
+
+ en
+ Update
+
+ 2
+
+
+ StdPicture.Refresh
+
+
+
+ Update
+
+
+ TextPicture
+ Auto
+
+
+ Basis
+
+ AnyRef
+
+
+
+
+
+
+
+
diff --git a/IRP/src/DataProcessors/Chat/Forms/Form/Module.bsl b/IRP/src/DataProcessors/Chat/Forms/Form/Module.bsl
new file mode 100644
index 0000000000..ce6dbef7f6
--- /dev/null
+++ b/IRP/src/DataProcessors/Chat/Forms/Form/Module.bsl
@@ -0,0 +1,83 @@
+
+&AtServer
+Procedure OnCreateAtServer(Cancel, StandardProcessing)
+ Basis = Parameters.Basis;
+ UpdateAtServer();
+EndProcedure
+
+&AtServer
+Procedure UpdateAtServer()
+
+ Result = GetChatMessages();
+ Data = CommonFunctionsServer.TableToStructure(Result);
+ ChatNotify = GetChatNotify();
+ For Each Msg In Data Do
+ If Not IsBlankString(Msg.NotifyID) Then
+ ObjectNotify = ChatNotify.Copy(New Structure("NotifyID", Msg.NotifyID));
+ Msg.Insert("Notify", CommonFunctionsServer.TableToStructure(ObjectNotify));
+ EndIf;
+ EndDo;
+
+ JSON = CommonFunctionsServer.SerializeJSON(Data);
+ Template = DataProcessors.Chat.GetTemplate("ChatHTML").GetText();
+ Chat = StrReplace(Template, "#MessageArray#", JSON);
+EndProcedure
+
+&AtServer
+Function GetChatMessages()
+ Query = New Query;
+ Query.Text =
+ "SELECT
+ | Logger.Period AS Period,
+ | REFPRESENTATION(Logger.User) AS User,
+ | Logger.User = &CurrentUser AS CurrentUser,
+ | Logger.Comment AS Message,
+ | Logger.ManualComment,
+ | Logger.NotifyID
+ |FROM
+ | InformationRegister.Logger AS Logger
+ |WHERE
+ | Logger.Basis = &Basis
+ |
+ |ORDER BY
+ | Period,
+ | Logger.TimeStamp";
+
+ Query.SetParameter("Basis", Basis);
+ Query.SetParameter("CurrentUser", SessionParameters.CurrentUser);
+ Result = Query.Execute().Unload();
+ Return Result
+EndFunction
+
+&AtServer
+Function GetChatNotify()
+ Query = New Query;
+ Query.Text =
+ "SELECT
+ | LoggerNotification.NotifyID,
+ | REFPRESENTATION(LoggerNotification.User) AS User,
+ | LoggerNotification.SendEmail,
+ | LoggerNotification.Sended,
+ | LoggerNotification.UserRead,
+ | LoggerNotification.WaitForOpenRef,
+ | LoggerNotification.RefOpened
+ |FROM
+ | InformationRegister.LoggerNotification AS LoggerNotification";
+
+ Query.SetParameter("Basis", Basis);
+ Query.SetParameter("CurrentUser", SessionParameters.CurrentUser);
+ Result = Query.Execute().Unload();
+ Return Result
+EndFunction
+
+&AtClient
+Procedure Update(Command)
+ UpdateAtServer();
+EndProcedure
+
+&AtClient
+Procedure SendMessage(Command)
+ LoggerServerCall.AddLog(Basis, NewMessage, True);
+ NewMessage = "";
+ UpdateAtServer();
+EndProcedure
diff --git a/IRP/src/DataProcessors/Chat/Templates/ChatHTML/Template.txt b/IRP/src/DataProcessors/Chat/Templates/ChatHTML/Template.txt
new file mode 100644
index 0000000000..cd6fbabe47
--- /dev/null
+++ b/IRP/src/DataProcessors/Chat/Templates/ChatHTML/Template.txt
@@ -0,0 +1,215 @@
+
+
+
+
+ Telegram-Style Chat
+
+
+
+
+
+
+
diff --git a/IRP/src/DataProcessors/CreateNewIssue/Forms/Form/Module.bsl b/IRP/src/DataProcessors/CreateNewIssue/Forms/Form/Module.bsl
index 8590cc067d..f1544951e9 100644
--- a/IRP/src/DataProcessors/CreateNewIssue/Forms/Form/Module.bsl
+++ b/IRP/src/DataProcessors/CreateNewIssue/Forms/Form/Module.bsl
@@ -94,7 +94,6 @@ Procedure CreateIssueHandler()
IssueRef = Issue;
EndIf;
-
IsError = False;
Str = PictureViewerClient.RefInfo();
Str.Ref = IssueRef;
@@ -111,7 +110,14 @@ Procedure CreateIssueHandler()
If File.Uploaded Then
Continue;
EndIf;
- FileStr = New Structure("Address, FileRef", File.BD, New Structure("Extension, Name", File.Extension, File.Name));
+ FileStr = New Structure("Address, FileRef, PutFileCanceled", PutToTempStorage(File.BD, UUID), New Structure("FileID, Extension, Name", New UUID, File.Extension, File.Name, False));
+ FileWrapper = New Structure;
+ FileWrapper.Insert("Name", File.Name + "." + File.Extension);
+ FileWrapper.Insert("BaseName", File.Name);
+ FileWrapper.Insert("Extension", File.Extension);
+ FileWrapper.Insert("FullName", File.Name + "." + File.Extension);
+ FileWrapper.Insert("Path", "");
+ FileStr.FileRef.Insert("File", FileWrapper);
Try
PictureViewerClient.AddFile(FileStr, , Str);
File.UploadStatus = PictureLib.AppearanceCheckBox;
@@ -149,7 +155,7 @@ Function CreateIssueAtServer()
Issue.Latitude = Object.Latitude;
Issue.Longitude = Object.Longitude;
Issue.DueDate = Object.DueDate;
-
+ Issue.Status = ObjectStatusesServer.GetStatusByDefault(Issue.Ref);
Try
Issue.Write(DocumentWriteMode.Posting);
Except
diff --git a/IRP/src/DataProcessors/IssueTracker/Forms/CheckInForm/Module.bsl b/IRP/src/DataProcessors/IssueTracker/Forms/CheckInForm/Module.bsl
index 0bb141e44f..81b12700ae 100644
--- a/IRP/src/DataProcessors/IssueTracker/Forms/CheckInForm/Module.bsl
+++ b/IRP/src/DataProcessors/IssueTracker/Forms/CheckInForm/Module.bsl
@@ -144,7 +144,14 @@ Procedure UploadFilesHandler()
If File.Uploaded Then
Continue;
EndIf;
- FileStr = New Structure("Address, FileRef", File.BD, New Structure("Extension, Name", File.Extension, File.Name));
+ FileStr = New Structure("Address, FileRef, PutFileCanceled", PutToTempStorage(File.BD, UUID), New Structure("FileID, Extension, Name", New UUID, File.Extension, File.Name, False));
+ FileWrapper = New Structure;
+ FileWrapper.Insert("Name", File.Name + "." + File.Extension);
+ FileWrapper.Insert("BaseName", File.Name);
+ FileWrapper.Insert("Extension", File.Extension);
+ FileWrapper.Insert("FullName", File.Name + "." + File.Extension);
+ FileWrapper.Insert("Path", "");
+ FileStr.FileRef.Insert("File", FileWrapper);
Try
PictureViewerClient.AddFile(FileStr, , Str);
File.UploadStatus = PictureLib.AppearanceCheckBox;
diff --git a/IRP/src/DefinedTypes/typeChatObject/typeChatObject.mdo b/IRP/src/DefinedTypes/typeChatObject/typeChatObject.mdo
new file mode 100644
index 0000000000..2da9c246d3
--- /dev/null
+++ b/IRP/src/DefinedTypes/typeChatObject/typeChatObject.mdo
@@ -0,0 +1,15 @@
+
+
+
+
+
+ typeChatObject
+
+ en
+ Type chat object
+
+
+ DocumentRef.WorkOrder
+ DocumentRef.Issue
+
+
diff --git a/IRP/src/DefinedTypes/typeObjectWithStatuses/typeObjectWithStatuses.mdo b/IRP/src/DefinedTypes/typeObjectWithStatuses/typeObjectWithStatuses.mdo
index 3437215b0b..97d76061a8 100644
--- a/IRP/src/DefinedTypes/typeObjectWithStatuses/typeObjectWithStatuses.mdo
+++ b/IRP/src/DefinedTypes/typeObjectWithStatuses/typeObjectWithStatuses.mdo
@@ -21,5 +21,6 @@
DocumentRef.ProductionPlanningCorrection
DocumentRef.ReconciliationStatement
DocumentRef.PhysicalInventory
+ DocumentRef.Issue
diff --git a/IRP/src/Documents/Issue/Forms/DocumentForm/Form.form b/IRP/src/Documents/Issue/Forms/DocumentForm/Form.form
index 560fbce53e..2a2b36d63a 100644
--- a/IRP/src/Documents/Issue/Forms/DocumentForm/Form.form
+++ b/IRP/src/Documents/Issue/Forms/DocumentForm/Form.form
@@ -1,122 +1,125 @@
-
+
- GroupTitle
- 7
+ GroupTitleItems
+ 27
- GroupTitleDecorations
- 9
-
- GroupTitleCollapsed
- 11
-
- DecorationGroupTitleCollapsedPicture
- 13
-
- en
- Decoration group title collapsed picture
-
+ GroupTitleLeft
+ 29
+
+ City
+ 72
+ true
+ true
+
+ true
+
+
+ Object.City
+
+
+ CityExtendedTooltip
+ 74
true
true
true
-
- DecorationGroupTitleCollapsedPictureExtendedTooltip
- 15
- true
- true
-
- true
-
- Label
- true
- true
-
- Left
-
-
-
- DecorationGroupTitleCollapsedPictureContextMenu
- 14
- true
- true
-
- true
-
- true
-
+ Label
true
true
-
-
- Click
- DecorationGroupTitleCollapsedPictureClick
-
-
- StdPicture.MoveRight
-
- true
- AsFileRef
+
+ Left
-
-
- DecorationGroupTitleCollapsedLabel
- 16
-
- en
- Please, fill the document
-
+
+
+ CityContextMenu
+ 73
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ Location
+ 75
+ true
+ true
+
+ true
+
+
+ Object.Location
+
+
+ LocationExtendedTooltip
+ 77
true
true
true
-
- DecorationGroupTitleCollapsedLabelExtendedTooltip
- 18
- true
- true
-
- true
-
- Label
- true
- true
-
- Left
-
-
-
- DecorationGroupTitleCollapsedLabelContextMenu
- 17
- true
- true
-
- true
-
- true
-
Label
- 100
+ true
true
-
- Click
- DecorationGroupTitleCollapsedLabelClick
-
- true
Left
-
+
+
+ LocationContextMenu
+ 76
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ Comment
+ 37
true
true
true
+
+ Comment
+
- GroupTitleCollapsedExtendedTooltip
- 12
+ CommentExtendedTooltip
+ 39
true
true
@@ -129,123 +132,181 @@
Left
- UsualGroup
-
- HorizontalIfPossible
- true
- true
- Auto
- Auto
+
+ CommentContextMenu
+ 38
+ true
+ true
+
+ true
+
+ true
+
+ LabelField
+ Enter
+ true
+ Left
+ true
+
+
+ Click
+ DescriptionClick
+
+ true
+ true
+ true
-
- GroupTitleUncollapsed
- 19
-
- DecorationGroupTitleUncollapsedPicture
- 21
+ true
+ true
+
+ true
+
+
+ GroupTitleLeftExtendedTooltip
+ 30
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+ UsualGroup
+
+ Vertical
+ true
+ true
+ Auto
+ Auto
+
+
+
+ GroupTitleMiddle
+ 40
+
+ Status
+ 113
+ true
+ true
+
+ true
+
+
+ Object.Status
+
+
+ OnChange
+ StatusOnChange
+
+
+ StatusExtendedTooltip
+ 115
true
true
true
-
- DecorationGroupTitleUncollapsedPictureExtendedTooltip
- 23
- true
- true
-
- true
-
- Label
- true
- true
-
- Left
-
-
-
- DecorationGroupTitleUncollapsedPictureContextMenu
- 22
- true
- true
-
- true
-
- true
-
+ Label
true
true
-
-
- Click
- DecorationGroupTitleUncollapsedPictureClick
-
-
- StdPicture.MoveDown
-
- true
- AsFileRef
+
+ Left
-
-
- DecorationGroupTitleUncollapsedLabel
- 24
-
- en
- Please, fill the document
-
+
+
+ StatusContextMenu
+ 114
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ IssueType
+ 78
+ true
+ true
+
+ true
+
+
+ Object.IssueType
+
+
+ IssueTypeExtendedTooltip
+ 80
true
true
true
-
- DecorationGroupTitleUncollapsedLabelExtendedTooltip
- 26
- true
- true
-
- true
-
- Label
- true
- true
-
- Left
-
-
-
- DecorationGroupTitleUncollapsedLabelContextMenu
- 25
- true
- true
-
- true
-
- true
-
Label
- 100
+ true
true
- true
-
- Click
- DecorationGroupTitleUncollapsedLabelClick
-
- true
Left
-
+
+
+ IssueTypeContextMenu
+ 79
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ DueDate
+ 92
true
true
true
+
+ Object.DueDate
+
- GroupTitleUncollapsedExtendedTooltip
- 20
+ DueDateExtendedTooltip
+ 94
true
true
@@ -258,13 +319,29 @@
Left
- UsualGroup
-
- HorizontalIfPossible
- true
- true
- Auto
- Auto
+
+ DueDateContextMenu
+ 93
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+ true
true
@@ -272,9 +349,13 @@
true
+
+ en
+ Group title middle
+
- GroupTitleDecorationsExtendedTooltip
- 10
+ GroupTitleMiddleExtendedTooltip
+ 41
true
true
@@ -297,125 +378,94 @@
- GroupTitleItems
- 27
-
- GroupTitleLeft
- 29
-
- Country
- 69
- true
- true
-
- true
-
-
- Object.Country
-
-
- CountryExtendedTooltip
- 71
- true
- true
-
- true
-
- Label
- true
- true
-
- Left
-
-
-
- CountryContextMenu
- 70
- true
- true
-
- true
-
- true
-
- InputField
- Enter
- true
- Left
- true
-
- true
- true
- true
- true
- true
- true
-
-
-
- City
- 72
- true
- true
-
- true
-
-
- Object.City
-
-
- CityExtendedTooltip
- 74
- true
- true
-
- true
-
- Label
- true
- true
-
- Left
-
-
-
- CityContextMenu
- 73
- true
- true
-
- true
-
- true
-
- InputField
- Enter
- true
- Left
- true
-
- true
- true
- true
- true
- true
- true
-
-
+ GroupTitleRight
+ 111
+ true
+ true
+
+ true
+
+
+ en
+ Group title middle
+
+
+ GroupTitleRightExtendedTooltip
+ 112
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+ UsualGroup
+
+ HorizontalIfPossible
+ Auto
+ true
+ true
+ Auto
+ Auto
+
+
+ true
+ true
+
+ true
+
+
+ GroupTitleItemsExtendedTooltip
+ 28
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+ UsualGroup
+
+ AlwaysHorizontal
+ true
+ true
+ Auto
+ Auto
+
+
+
+ GroupMainPages
+ 53
+
+ PageInfo
+ 81
+
+ GroupInfoTop
+ 157
- Comment
- 37
+ IssueDetails
+ 83
true
true
true
- Comment
+ Object.IssueDetails
- CommentExtendedTooltip
- 39
+ IssueDetailsExtendedTooltip
+ 85
true
true
@@ -429,8 +479,8 @@
- CommentContextMenu
- 38
+ IssueDetailsContextMenu
+ 84
true
true
@@ -438,167 +488,220 @@
true
- LabelField
+ TextDocumentField
Enter
true
Left
true
-
-
- Click
- DescriptionClick
-
+
+ 50
true
+ 10
true
- true
+ true
+ true
- true
- true
-
- true
-
-
- GroupTitleLeftExtendedTooltip
- 30
- true
- true
-
- true
-
- Label
- true
- true
-
- Left
-
-
- UsualGroup
-
- Vertical
- true
- true
- Auto
- Auto
-
-
-
- GroupTitleRight
- 40
-
- Location
- 75
+
+ AssigneeList
+ 141
true
true
true
- Object.Location
+ AssigneeList
-
- LocationExtendedTooltip
- 77
+ None
+
+ AssigneeListValue
+ 154
+
+ en
+ Assignee
+
true
true
true
- Label
- true
- true
-
- Left
+
+ AssigneeList.Value
+
+
+ AssigneeListValueExtendedTooltip
+ 156
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ AssigneeListValueContextMenu
+ 155
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
-
-
- LocationContextMenu
- 76
+
+
+ AssigneeListCommandBar
+ 142
true
true
true
+ Left
true
-
- InputField
- Enter
- true
- Left
- true
-
- true
- true
- true
- true
- true
- true
-
-
-
- IssueType
- 78
- true
- true
-
- true
-
-
- Object.IssueType
-
-
- IssueTypeExtendedTooltip
- 80
+
+
+ OnChange
+ AssigneeListOnChange
+
+
true
true
true
- Label
- true
- true
-
- Left
+ AssigneeListSearchString
+ 145
+
+ AssigneeListSearchStringExtendedTooltip
+ 147
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ AssigneeListSearchStringContextMenu
+ 146
+ true
+ true
+
+ true
+
+ true
+
+ AssigneeList
+
+ true
-
-
- IssueTypeContextMenu
- 79
+
+
true
true
true
- true
-
- InputField
- Enter
- true
- Left
- true
-
- true
- true
- true
- true
- true
- true
-
-
-
- DueDate
- 92
- true
- true
-
- true
-
-
- Object.DueDate
-
+ AssigneeListViewStatus
+ 151
+
+ AssigneeListViewStatusExtendedTooltip
+ 153
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ AssigneeListViewStatusContextMenu
+ 152
+ true
+ true
+
+ true
+
+ true
+
+ ViewStatusAddition
+ AssigneeList
+
+ true
+
+
+
+ true
+ true
+
+ true
+
+ AssigneeListSearchControl
+ 148
+
+ AssigneeListSearchControlExtendedTooltip
+ 150
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ AssigneeListSearchControlContextMenu
+ 149
+ true
+ true
+
+ true
+
+ true
+
+ SearchControlAddition
+ AssigneeList
+
+ true
+
+
- DueDateExtendedTooltip
- 94
+ AssigneeListExtendedTooltip
+ 144
true
true
@@ -612,8 +715,8 @@
- DueDateContextMenu
- 93
+ AssigneeListContextMenu
+ 143
true
true
@@ -621,29 +724,39 @@
true
- InputField
- Enter
- true
- Left
- true
-
- true
- true
- true
- true
- true
- true
- true
-
+ true
+ true
+ 20
+ true
+ 20
+ true
+ true
+ MultiRow
+
+ 1
+ 1
+ AutoUse
+ AutoUse
+ true
+ true
+ true
+ Auto
+ Auto
+ true
+ AsFileRef
true
true
true
+
+ en
+ Group info top
+
- GroupTitleRightExtendedTooltip
- 41
+ GroupInfoTopExtendedTooltip
+ 158
true
true
@@ -658,7 +771,8 @@
UsualGroup
- Vertical
+ AlwaysHorizontal
+ Auto
true
true
Auto
@@ -670,9 +784,13 @@
true
+
+ en
+ Info
+
- GroupTitleItemsExtendedTooltip
- 28
+ PageInfoExtendedTooltip
+ 82
true
true
@@ -685,70 +803,30 @@
Left
- UsualGroup
-
- AlwaysHorizontal
- true
- true
- Auto
- Auto
+ Page
+
+ Vertical
+ true
- true
- true
-
- true
-
-
- en
- Purchase Order
-
-
- GroupTitleExtendedTooltip
- 8
- true
- true
-
- true
-
- Label
- true
- true
-
- Left
-
-
- UsualGroup
-
- Vertical
- Picture
- WeakSeparation
- true
- true
- Auto
- Auto
-
-
-
- GroupMainPages
- 53
- PageInfo
- 81
-
- IssueDetails
- 83
+ GroupOther
+ 55
+
+ DecorationStatusHistory
+ 116
+
+ en
+ History
+
true
true
true
-
- Object.IssueDetails
-
- IssueDetailsExtendedTooltip
- 85
+ DecorationStatusHistoryExtendedTooltip
+ 118
true
true
@@ -762,8 +840,8 @@
- IssueDetailsContextMenu
- 84
+ DecorationStatusHistoryContextMenu
+ 117
true
true
@@ -771,53 +849,18 @@
true
- TextDocumentField
- Enter
- true
- Left
- true
-
- 50
- true
- 10
- true
- true
- true
-
-
- true
- true
-
- true
-
-
- en
- Info
-
-
- PageInfoExtendedTooltip
- 82
- true
- true
-
- true
-
Label
true
true
+
+ Click
+ DecorationStatusHistoryClick
+
+ true
Left
-
- Page
-
- Vertical
- true
-
-
-
- GroupOther
- 55
+
Number
57
@@ -1023,6 +1066,56 @@
true
+
+ Country
+ 69
+ true
+ true
+
+ true
+
+
+ Object.Country
+
+
+ CountryExtendedTooltip
+ 71
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ CountryContextMenu
+ 70
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
Latitude
86
@@ -1271,6 +1364,28 @@
+
+ AssigneeList
+
+ en
+ Assignee
+
+ 4
+
+ ValueList
+
+
+ true
+
+
+ true
+
+
+
+ CatalogRef.Users
+
+
+
diff --git a/IRP/src/Documents/Issue/Forms/DocumentForm/Module.bsl b/IRP/src/Documents/Issue/Forms/DocumentForm/Module.bsl
index 0c56a05529..cbce8141b7 100644
--- a/IRP/src/Documents/Issue/Forms/DocumentForm/Module.bsl
+++ b/IRP/src/Documents/Issue/Forms/DocumentForm/Module.bsl
@@ -5,6 +5,7 @@
Procedure OnReadAtServer(CurrentObject)
DocIssueServer.OnReadAtServer(Object, ThisObject, CurrentObject);
SetVisibilityAvailability(CurrentObject, ThisObject);
+ AssigneeList.LoadValues(CurrentObject.AssigneeList.Unload().UnloadColumn("Assignee"));
EndProcedure
&AtServer
@@ -17,6 +18,12 @@ EndProcedure
&AtServer
Procedure BeforeWriteAtServer(Cancel, CurrentObject, WriteParameters)
+
+ CurrentObject.AssigneeList.Clear();
+ For Each Assignee In AssigneeList Do
+ CurrentObject.AssigneeList.Add().Assignee = Assignee.Value;
+ EndDo;
+
AddAttributesAndPropertiesServer.BeforeWriteAtServer(ThisObject, Cancel, CurrentObject, WriteParameters);
EndProcedure
@@ -29,6 +36,9 @@ EndProcedure
&AtClient
Procedure OnOpen(Cancel)
DocIssueClient.OnOpen(Object, ThisObject, Cancel);
+ If Not Cancel Then
+ LoggerServerCall.CheckIfNeedSetOnOpen(Object.Ref);
+ EndIf;
EndProcedure
&AtClient
@@ -77,6 +87,25 @@ Procedure _DetachIdleHandler() Export
DetachIdleHandler("_IdeHandler");
EndProcedure
+&AtClient
+Procedure AssigneeListOnChange(Item)
+ Modified = True;
+EndProcedure
+
+#EndRegion
+
+#Region STATUS
+
+&AtClient
+Procedure StatusOnChange(Item)
+ DocIssueClient.StatusOnChange(Object, ThisObject, Item);
+EndProcedure
+
+&AtClient
+Procedure DecorationStatusHistoryClick(Item)
+ ObjectStatusesClient.OpenHistoryByStatus(Object.Ref, ThisObject);
+EndProcedure
+
#EndRegion
#Region _DATE
diff --git a/IRP/src/Documents/Issue/Issue.mdo b/IRP/src/Documents/Issue/Issue.mdo
index 1fe60691fd..d3a06a28f2 100644
--- a/IRP/src/Documents/Issue/Issue.mdo
+++ b/IRP/src/Documents/Issue/Issue.mdo
@@ -218,6 +218,28 @@
Use
Use
+
+ Status
+
+ en
+ Status
+
+
+ CatalogRef.ObjectStatuses
+
+
+
+ ShowError
+
+ Filter.Parent
+
+ Catalog.ObjectStatuses.Issue
+
+
+
+ Use
+ Use
+
DocumentForm
@@ -286,6 +308,31 @@
Use
+
+
+
+
+
+ AssigneeList
+
+ en
+ Assignee list
+
+
+ Assignee
+
+ en
+ Assignee
+
+
+ CatalogRef.Users
+
+
+
+ Use
+ Use
+
+
CreateIssues
diff --git a/IRP/src/Documents/Issue/ManagerModule.bsl b/IRP/src/Documents/Issue/ManagerModule.bsl
index 54f06a9fd3..cbff3c8890 100644
--- a/IRP/src/Documents/Issue/ManagerModule.bsl
+++ b/IRP/src/Documents/Issue/ManagerModule.bsl
@@ -10,6 +10,19 @@ EndFunction
Function PostingGetDocumentDataTables(Ref, Cancel, PostingMode, Parameters, AddInfo = Undefined) Export
Tables = New Structure;
+
+ ObjectStatusesServer.WriteStatusToRegister(Ref, Ref.Status);
+ StatusInfo = ObjectStatusesServer.GetLastStatusInfo(Ref);
+ Parameters.Insert("StatusInfo", StatusInfo);
+ If Not StatusInfo.Posting Then
+ QueryArray = GetQueryTextsSecondaryTables();
+ Parameters.Insert("QueryParameters", GetAdditionalQueryParameters(Ref));
+ PostingServer.ExecuteQuery(Ref, QueryArray, Parameters);
+ Return Tables;
+ EndIf;
+
+ Parameters.IsReposting = False;
+
QueryArray = GetQueryTextsSecondaryTables();
Parameters.Insert("QueryParameters", GetAdditionalQueryParameters(Ref));
PostingServer.ExecuteQuery(Ref, QueryArray, Parameters);
diff --git a/IRP/src/Documents/Issue/ObjectModule.bsl b/IRP/src/Documents/Issue/ObjectModule.bsl
index 59182b4fad..1fd7d86f84 100644
--- a/IRP/src/Documents/Issue/ObjectModule.bsl
+++ b/IRP/src/Documents/Issue/ObjectModule.bsl
@@ -3,12 +3,52 @@ Procedure BeforeWrite(Cancel, WriteMode, PostingMode)
If DataExchange.Load Then
Return;
EndIf;
+
+ AdditionalProperties.Insert("Posted", Ref.Posted);
+ AdditionalProperties.Insert("WriteMode", WriteMode);
+ AdditionalProperties.Insert("AssigneeArray", Ref.AssigneeList.Unload().UnloadColumn("Assignee"));
EndProcedure
Procedure OnWrite(Cancel)
If DataExchange.Load Then
Return;
EndIf;
+
+ If Cancel Then
+ Return;
+ EndIf;
+
+ If Not AdditionalProperties.Posted
+ And AdditionalProperties.WriteMode = DocumentWriteMode.Posting Then
+ LoggerServerCall.AddLog(Ref, R().Issue_3, False);
+ ElsIf AdditionalProperties.Posted
+ And AdditionalProperties.WriteMode = DocumentWriteMode.UndoPosting Then
+
+ NotifyUsers = New Array;
+ If Not SessionParameters.CurrentUser = Author Then
+ NotifyUsers.Add(Author);
+ EndIf;
+ Settings = LoggerServerCall.GetNotifySettings();
+ Settings.SendEmail = True;
+ LoggerServerCall.AddLog(Ref, R().Issue_4, False, NotifyUsers, Settings);
+ EndIf;
+
+ If Posted Then
+ NotifyUsers = New Array;
+ For Each AssigneeRow In AssigneeList Do
+ If AdditionalProperties.AssigneeArray.Find(AssigneeRow.Assignee) = Undefined Then
+ NotifyUsers.Add(AssigneeRow.Assignee);
+ EndIf;
+ EndDo;
+
+ If NotifyUsers.Count() > 0 Then
+ Settings = LoggerServerCall.GetNotifySettings();
+ Settings.SendEmail = True;
+ Settings.WaitForOpenRef = True;
+ LoggerServerCall.AddLog(Ref, R().Issue_5, False, NotifyUsers, Settings);
+ EndIf;
+ EndIf;
+
EndProcedure
Procedure BeforeDelete(Cancel)
@@ -16,3 +56,11 @@ Procedure BeforeDelete(Cancel)
Return;
EndIf;
EndProcedure
+
+Procedure Posting(Cancel, PostingMode)
+ PostingServer.Post(ThisObject, Cancel, PostingMode, ThisObject.AdditionalProperties);
+EndProcedure
+
+Procedure UndoPosting(Cancel)
+ UndopostingServer.Undopost(ThisObject, Cancel, ThisObject.AdditionalProperties);
+EndProcedure
\ No newline at end of file
diff --git a/IRP/src/InformationRegisters/Logger/Forms/ListForm/Attributes/List/ExtInfo/ListSettings.dcss b/IRP/src/InformationRegisters/Logger/Forms/ListForm/Attributes/List/ExtInfo/ListSettings.dcss
new file mode 100644
index 0000000000..9b4b6a5d2c
--- /dev/null
+++ b/IRP/src/InformationRegisters/Logger/Forms/ListForm/Attributes/List/ExtInfo/ListSettings.dcss
@@ -0,0 +1,21 @@
+
+
+
+ Normal
+ 606c2cb5-bd98-4fea-a887-3695fd8065e5
+
+
+ -
+ TimeStamp
+ Desc
+
+ Normal
+ 6e18f554-2e17-4ea0-bb6a-d0d87ea3f9fe
+
+
+ Normal
+ 7a7d8279-1240-4253-8cde-e4fa39c5d57b
+
+ Normal
+ 0e184df6-3064-4221-8d36-882217a4d841
+
diff --git a/IRP/src/InformationRegisters/Logger/Forms/ListForm/Form.form b/IRP/src/InformationRegisters/Logger/Forms/ListForm/Form.form
new file mode 100644
index 0000000000..45eedca85b
--- /dev/null
+++ b/IRP/src/InformationRegisters/Logger/Forms/ListForm/Form.form
@@ -0,0 +1,617 @@
+
+
+
+ ListSettingsComposerUserSettings
+ 1
+ true
+ true
+
+ true
+
+
+ en
+ User settings group
+
+ false
+
+ ListSettingsComposerUserSettingsExtendedTooltip
+ 2
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+ UsualGroup
+
+ Vertical
+ Auto
+ WeakSeparation
+ true
+ true
+ Auto
+ Auto
+
+
+
+ List
+ 3
+ true
+ true
+
+ true
+
+
+ List
+
+ true
+ None
+
+ Period
+ 16
+ true
+ true
+
+ true
+
+
+ List.Period
+
+ true
+
+ PeriodExtendedTooltip
+ 18
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ PeriodContextMenu
+ 17
+ true
+ true
+
+ true
+
+ true
+
+ LabelField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+
+
+
+ TimeStamp
+ 25
+ true
+ true
+
+
+ List.TimeStamp
+
+
+ TimeStampExtendedTooltip
+ 27
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ TimeStampContextMenu
+ 26
+ true
+ true
+
+ true
+
+ true
+
+ LabelField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+
+
+
+ Basis
+ 19
+ true
+ true
+
+ true
+
+
+ List.Basis
+
+
+ BasisExtendedTooltip
+ 21
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ BasisContextMenu
+ 20
+ true
+ true
+
+ true
+
+ true
+
+ LabelField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+
+
+
+ User
+ 22
+ true
+ true
+
+ true
+
+
+ List.User
+
+
+ UserExtendedTooltip
+ 24
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ UserContextMenu
+ 23
+ true
+ true
+
+ true
+
+ true
+
+ LabelField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+
+
+
+ ManualComment
+ 31
+ true
+ true
+
+
+ List.ManualComment
+
+
+ ManualCommentExtendedTooltip
+ 33
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ ManualCommentContextMenu
+ 32
+ true
+ true
+
+ true
+
+ true
+
+ LabelField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+
+
+
+ Comment
+ 28
+ true
+ true
+
+ true
+
+
+ List.Comment
+
+
+ CommentExtendedTooltip
+ 30
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ CommentContextMenu
+ 29
+ true
+ true
+
+ true
+
+ true
+
+ LabelField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+
+
+ None
+
+ ListCommandBar
+ 5
+ true
+ true
+
+ true
+
+ Left
+
+
+ true
+ true
+
+ true
+
+ ListSearchString
+ 7
+
+ ListSearchStringExtendedTooltip
+ 9
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ ListSearchStringContextMenu
+ 8
+ true
+ true
+
+ true
+
+ true
+
+ List
+
+ true
+
+
+
+ true
+ true
+
+ true
+
+ ListViewStatus
+ 10
+
+ ListViewStatusExtendedTooltip
+ 12
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ ListViewStatusContextMenu
+ 11
+ true
+ true
+
+ true
+
+ true
+
+ ViewStatusAddition
+ List
+
+ true
+
+
+
+ true
+ true
+
+ true
+
+ ListSearchControl
+ 13
+
+ ListSearchControlExtendedTooltip
+ 15
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ ListSearchControlContextMenu
+ 14
+ true
+ true
+
+ true
+
+ true
+
+ SearchControlAddition
+ List
+
+ true
+
+
+
+ ListExtendedTooltip
+ 6
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ ListContextMenu
+ 4
+ true
+ true
+
+ true
+
+ true
+
+ true
+ true
+ true
+ true
+ true
+ MultiRow
+
+ 1
+ 1
+ AutoUse
+ AutoUse
+ true
+ true
+ true
+ Auto
+ Auto
+ ExpandTopLevel
+ true
+ true
+ true
+ true
+ AsFileRef
+
+ List.DefaultPicture
+
+
+ 60
+
+ 0001-01-01T00:00:00
+ 0001-01-01T00:00:00
+
+
+ true
+ true
+ ListSettingsComposerUserSettings
+
+
+
+ Comment1
+ 34
+
+ en
+ Comment
+
+ true
+ true
+
+ true
+
+
+ Items.List.CurrentData.Comment
+
+
+ Comment1ExtendedTooltip
+ 36
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ Comment1ContextMenu
+ 35
+ true
+ true
+
+ true
+
+ true
+
+ TextDocumentField
+ Enter
+ true
+ Left
+ true
+
+ 50
+ true
+ 10
+ true
+ true
+ true
+
+
+
+ FormCommandBar
+ -1
+ true
+ true
+
+ true
+
+ Left
+ true
+
+ true
+ true
+ true
+ Vertical
+ true
+ true
+ true
+ true
+ true
+
+ List
+ 1
+
+ DynamicList
+
+
+ true
+
+
+ true
+
+ true
+
+ InformationRegister.Logger
+ true
+ true
+ true
+ true
+
+
+
+
+
+
+
+
diff --git a/IRP/src/InformationRegisters/Logger/Forms/RecordForm/Form.form b/IRP/src/InformationRegisters/Logger/Forms/RecordForm/Form.form
new file mode 100644
index 0000000000..139bc1337f
--- /dev/null
+++ b/IRP/src/InformationRegisters/Logger/Forms/RecordForm/Form.form
@@ -0,0 +1,337 @@
+
+
+
+ Period
+ 1
+ true
+ true
+
+ true
+
+
+ Record.Period
+
+
+ PeriodExtendedTooltip
+ 3
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ PeriodContextMenu
+ 2
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ Basis
+ 4
+ true
+ true
+
+ true
+
+
+ Record.Basis
+
+
+ BasisExtendedTooltip
+ 6
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ BasisContextMenu
+ 5
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ User
+ 7
+ true
+ true
+
+ true
+
+
+ Record.User
+
+
+ UserExtendedTooltip
+ 9
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ UserContextMenu
+ 8
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ TimeStamp
+ 10
+ true
+ true
+
+ true
+
+
+ Record.TimeStamp
+
+
+ TimeStampExtendedTooltip
+ 12
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ TimeStampContextMenu
+ 11
+ true
+ true
+
+ true
+
+ true
+
+ InputField
+ Enter
+ true
+ Left
+ true
+
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+ ManualComment
+ 16
+ true
+ true
+
+ true
+
+
+ Record.ManualComment
+
+
+ ManualCommentExtendedTooltip
+ 18
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ ManualCommentContextMenu
+ 17
+ true
+ true
+
+ true
+
+ true
+
+ CheckBoxField
+ Enter
+ true
+ Left
+ true
+
+
+
+ Comment
+ 13
+ true
+ true
+
+ true
+
+
+ Record.Comment
+
+
+ CommentExtendedTooltip
+ 15
+ true
+ true
+
+ true
+
+ Label
+ true
+ true
+
+ Left
+
+
+
+ CommentContextMenu
+ 14
+ true
+ true
+
+ true
+
+ true
+
+ TextDocumentField
+ Enter
+ true
+ Left
+ true
+
+ 50
+ true
+ 10
+ true
+ true
+ true
+
+
+
+ FormCommandBar
+ -1
+ true
+ true
+
+ true
+
+ Left
+ true
+
+ LockOwnerWindow
+ true
+ true
+ true
+ Vertical
+ true
+ true
+ true
+ true
+ true
+
+ Record
+ 1
+
+ InformationRegisterRecordManager.Logger
+
+
+ true
+
+
+ true
+
+ true
+ true
+
+
+
+
+
+
+
diff --git a/IRP/src/InformationRegisters/Logger/Logger.mdo b/IRP/src/InformationRegisters/Logger/Logger.mdo
new file mode 100644
index 0000000000..7a9c31c588
--- /dev/null
+++ b/IRP/src/InformationRegisters/Logger/Logger.mdo
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+
+
+
+
+
+ Logger
+
+ en
+ Logger
+
+ InDialog
+ InformationRegister.Logger.Form.RecordForm
+ InformationRegister.Logger.Form.ListForm
+ Second
+ Managed
+
+ en
+ Log
+
+
+ Comment
+
+ en
+ Comment
+
+
+ String
+
+
+ true
+
+
+ Use
+ Use
+
+
+
+ ManualComment
+
+ en
+ Manual comment
+
+
+ Boolean
+
+
+
+ Use
+ Use
+
+
+
+ NotifyID
+
+ en
+ Notify ID
+
+
+ String
+
+ 36
+
+
+
+
+ Use
+ Use
+
+
+
+ Basis
+
+ en
+ Basis
+
+
+ AnyRef
+
+
+
+ true
+ Use
+ Use
+ true
+
+ true
+ true
+
+
+ User
+
+ en
+ User
+
+
+ CatalogRef.Users
+
+
+
+ true
+ Use
+ Use
+
+
+
+ TimeStamp
+
+ en
+ Time stamp
+
+
+ Number
+
+ 20
+
+
+
+
+ Use
+ Use
+
+ true
+
+
+ RecordForm
+
+ en
+ Record form
+
+ PersonalComputer
+ MobileDevice
+
+
+ ListForm
+
+ en
+ List form
+
+ PersonalComputer
+ MobileDevice
+
+
diff --git a/IRP/src/InformationRegisters/Logger/ManagerModule.bsl b/IRP/src/InformationRegisters/Logger/ManagerModule.bsl
new file mode 100644
index 0000000000..a9eecc494a
--- /dev/null
+++ b/IRP/src/InformationRegisters/Logger/ManagerModule.bsl
@@ -0,0 +1,12 @@
+#Region AccessObject
+
+// Get access key.
+// See Role.TemplateInformationRegisters
+//
+// Returns:
+// Structure - Get access key:
+Function GetAccessKey() Export
+ Return New Structure();
+EndFunction
+
+#EndRegion
diff --git a/IRP/src/InformationRegisters/Logger/RecordSetModule.bsl b/IRP/src/InformationRegisters/Logger/RecordSetModule.bsl
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/IRP/src/InformationRegisters/LoggerNotification/LoggerNotification.mdo b/IRP/src/InformationRegisters/LoggerNotification/LoggerNotification.mdo
new file mode 100644
index 0000000000..80334067a1
--- /dev/null
+++ b/IRP/src/InformationRegisters/LoggerNotification/LoggerNotification.mdo
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+
+
+
+
+
+ LoggerNotification
+
+ en
+ Logger notification
+
+ InDialog
+ Managed
+
+ SendEmail
+
+ en
+ Send email
+
+ Need to send email to user
+
+ Boolean
+
+
+
+ Use
+ Use
+
+
+
+ Sended
+
+ en
+ Sended
+
+ Email was sended
+
+ Boolean
+
+
+
+ Use
+ Use
+
+
+
+ UserRead
+
+ en
+ User read
+
+ User read email or message
+
+ Boolean
+
+
+
+ Use
+ Use
+
+
+
+ WaitForOpenRef
+
+ en
+ Wait for open ref
+
+ Wait until user open ref
+
+ Boolean
+
+
+
+ Use
+ Use
+
+
+
+ RefOpened
+
+ en
+ Ref opened
+
+ User open ref
+
+ Boolean
+
+
+
+ Use
+ Use
+
+
+
+ NotifyID
+
+ en
+ Notify ID
+
+
+ String
+
+ 36
+
+
+
+
+ Use
+ Use
+
+ true
+
+
+ User
+
+ en
+ User
+
+
+ CatalogRef.Users
+
+
+
+ true
+ Use
+ Use
+
+ true
+
+
+ Basis
+
+ en
+ Basis
+
+
+ AnyRef
+
+
+
+ true
+ Use
+ Use
+ true
+
+ true
+ true
+
+
diff --git a/IRP/src/InformationRegisters/LoggerNotification/ManagerModule.bsl b/IRP/src/InformationRegisters/LoggerNotification/ManagerModule.bsl
new file mode 100644
index 0000000000..a9eecc494a
--- /dev/null
+++ b/IRP/src/InformationRegisters/LoggerNotification/ManagerModule.bsl
@@ -0,0 +1,12 @@
+#Region AccessObject
+
+// Get access key.
+// See Role.TemplateInformationRegisters
+//
+// Returns:
+// Structure - Get access key:
+Function GetAccessKey() Export
+ Return New Structure();
+EndFunction
+
+#EndRegion
diff --git a/IRP/src/InformationRegisters/Taxes/RecordSetModule.bsl b/IRP/src/InformationRegisters/Taxes/RecordSetModule.bsl
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/IRP/src/Roles/Logger/Logger.mdo b/IRP/src/Roles/Logger/Logger.mdo
new file mode 100644
index 0000000000..e8ecd59b09
--- /dev/null
+++ b/IRP/src/Roles/Logger/Logger.mdo
@@ -0,0 +1,8 @@
+
+
+ Logger
+
+ en
+ Logger
+
+
diff --git a/IRP/src/Roles/Logger/Rights.rights b/IRP/src/Roles/Logger/Rights.rights
new file mode 100644
index 0000000000..34680160c2
--- /dev/null
+++ b/IRP/src/Roles/Logger/Rights.rights
@@ -0,0 +1,13 @@
+
+
+ false
+ true
+ false
+
+
diff --git a/IRP/src/Roles/TemplateInformationRegisters/Rights.rights b/IRP/src/Roles/TemplateInformationRegisters/Rights.rights
index bf9c153042..aa27dcbe85 100644
--- a/IRP/src/Roles/TemplateInformationRegisters/Rights.rights
+++ b/IRP/src/Roles/TemplateInformationRegisters/Rights.rights
@@ -1487,6 +1487,16 @@
true
+
+