private void ParentHasChanged() { // Get selected document // List documents connected to selected document // ... for selected link type var x = cbxDocument.Text; string[] doco = x.Split(';'); Document document = new Document(); document.UID = Convert.ToInt32(doco[0]); SelectedParentDocumentUID = document.UID; // Get document set if (string.IsNullOrEmpty(cbxDocumentSet.Text)) { documentSetUID = 1; } else { var docSetUID = cbxDocumentSet.Text; string[] docoSet = docSetUID.Split(';'); documentSetUID = Convert.ToInt32(docoSet[0]); } DocumentSetDocumentLinkList list = DocumentSetDocumentLinkList.ListRelatedDocuments( documentSetUID, document.UID, cbxLinkType.Text); loadLinkedDocuments(document); }
// ------------------------------------------------------------ // Cop\y document links from Document Set Document Link // ------------------------------------------------------------ public void ReplicateDocSetDocLinkToClient(int ClientUID, int ClientSetUID, int DocumentSetUID) { // 1... GetClientDocument // List documents for a Client Set Document // var clientDocumentList = new ClientDocument(); clientDocumentList.List(ClientUID, ClientSetUID); // 2... foreach( clientDocument ) // For each client document, retrieve the linked documents // foreach (var clientDocument in clientDocumentList.clientDocSetDocLink) { // 3...... GetDocumentChildren( currentClientDocument) // This part retrieves Document Links and not ClientDocument Links var children = DocumentSetDocumentLinkList.ListRelatedDocuments(DocumentSetUID, clientDocument.document.UID, type: "ALL"); // 4...... foreach (GetDocumentChildren) foreach (var child in children.documentSetDocumentLinkList) { // 5..... CreateClientDocumentLink(Client,ClientSet,DocumentParent,DocumentChild, Type) ClientDocumentLink newLink = new ClientDocumentLink(); newLink.FKClientDocumentSetUID = ClientSetUID; newLink.FKClientUID = ClientUID; newLink.FKParentDocumentUID = clientDocument.document.UID; newLink.FKChildDocumentUID = child.FKChildDocumentUID; newLink.LinkType = child.LinkType; newLink.Add(); } } }
// ------------------------------------------ // List Documents // ------------------------------------------ public void loadLinkedDocuments(Document document) { // Image list // ImageList imageList = ControllerUtils.GetImageList(); // Binding tvLinkedDocuments.ImageList = imageList; // Clear nodes tvLinkedDocuments.Nodes.Clear(); var docoList = DocumentSetDocumentLinkList.ListRelatedDocuments(documentSetUID, document.UID, cbxLinkType.Text); // Load document in the treeview // // docoList.ListInTree(tvLinkedDocuments); Document root = new Document(); root.CUID = document.CUID; root.RecordType = FCMConstant.RecordType.FOLDER; root.UID = document.UID; // root.Read(); // root = RepDocument.Read(false, document.UID, document.CUID); // Using Business Layer var documentReadRequest = new DocumentReadRequest(); documentReadRequest.UID = document.UID; documentReadRequest.CUID = document.CUID; documentReadRequest.retrieveVoidedDocuments = false; var docreadresp = BUSDocument.DocumentRead(documentReadRequest); if (docreadresp.response.ReturnCode == 0001) { // all good } else { MessageBox.Show(docreadresp.response.Message); return; } root = docreadresp.document; // DocumentSetDocumentLinkList.ListInTree(tvLinkedDocuments, docoList, root); tvLinkedDocuments.ExpandAll(); }