// --------------------------------------------------------- // Copy document links to client document links // --------------------------------------------------------- public void ReplicateDocLinkToClientX(int ClientUID, int ClientSetUID) { // 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 = DocumentLinkList.ListRelatedDocuments(clientDocument.document.UID); // 4...... foreach (GetDocumentChildren) foreach (var child in children.documentLinkList) { // 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 = DocumentLinkList.ListRelatedDocuments(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; // DocumentLinkList.ListInTree(tvLinkedDocuments, docoList, root); tvLinkedDocuments.ExpandAll(); }
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; DocumentLinkList list = DocumentLinkList.ListRelatedDocuments(document.UID, cbxLinkType.Text); loadLinkedDocuments(document); }
// --------------------------------------------------------- // Copy document links to client document links // --------------------------------------------------------- public void ReplicateDocLinkToClientDeprecated(int ClientUID, int ClientSetUID) { // 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 // that's why we need to get the equivalent ClientDocumentUID... var children = DocumentLinkList.ListRelatedDocuments(clientDocument.document.UID); // 4...... foreach (GetDocumentChildren) foreach (var child in children.documentLinkList) { // 5..... CreateClientDocumentLink(Client,ClientSet,DocumentParent,DocumentChild, Type) ClientDocumentLink newLink = new ClientDocumentLink(); // This is the client document UID newLink.FKParentDocumentUID = clientDocument.clientDocument.UID; // Get clientUID for child document ClientDocument childDocument = new ClientDocument(); //childDocument.FKDocumentUID = child.UID; childDocument.FKDocumentUID = child.documentTo.UID; childDocument.Find(child.documentTo.UID, clientDocument.clientDocumentSet.UID, 'N', ClientUID); if (childDocument.UID > 0) { newLink.FKChildDocumentUID = childDocument.UID; newLink.LinkType = child.LinkType; // Replace by link type newLink.Add(); } } } //using (var connection = new SqlConnection(ConnString.ConnectionString)) //{ // var commandString = string.Format( // " SELECT " + // " [UID] " + // " FROM [ClientDocument] " + // " WHERE " + // " [FKClientUID] = {0} " + // " AND [FKClientDocumentSetUID] = {1} ", // ClientUID, // ClientSetUID // ); // using (var command = new SqlCommand( // commandString, connection)) // { // connection.Open(); // using (SqlDataReader reader = command.ExecuteReader()) // { // while (reader.Read()) // { // int ClientDocumentUID; // ClientDocumentUID = Convert.ToInt32(reader["UID"].ToString()); // } // } // } //} }