private static String onePatient(PatientData patient, ISPDBL patComp)
        {
            StringBuilder sb = new StringBuilder();
            OperationData operation = patComp.GetLastOperationByPatientID(patient.Id);
            VisitData visit = patComp.GetLastVisitByPatientID(patient.Id);
            StringBuilder toDoSB = new StringBuilder();

            sb.Append(firstLine(patient));
            sb.Append(name(patient));
            sb.Append(opDiagnoses(operation));
            if (operation == null || String.IsNullOrEmpty(operation.Diagnoses)) {
                sb.Append(visitDiagnoses(visit));
            }
            sb.Append(opPerformed(operation));
            sb.Append(opTeam(operation));
            sb.Append(seperator());
            return sb.ToString();
        }
        private static String onePatient(PatientData patient, ISPDBL patComp, long year, long halfyear, ActionKind actionKind)
        {
            StringBuilder sb = new StringBuilder();
            OperationData operation = patComp.GetLastOperationByPatientID(patient.Id);
            VisitData visit = patComp.GetLastVisitByPatientID(patient.Id);
            StringBuilder toDoSB = new StringBuilder();
            foreach (NextActionData nextAction in patComp.GetNextActionsByPatientID(patient.Id)) {
                if (nextAction.ActionYear == year &&
                    nextAction.ActionhalfYear == halfyear &&
                    nextAction.ActionKind == actionKind &&
                    !String.IsNullOrEmpty(nextAction.Todo)) {
                    toDoSB.Append(nextAction.Todo);
                }
            }

            sb.Append(firstLine(patient));
            sb.Append(name(patient));
            sb.Append(opDiagnoses(operation));
            sb.Append(visitDiagnoses(visit));
            sb.Append(visitTherapy(visit));
            sb.Append(toDo(toDoSB.ToString()));
            sb.Append(seperator());
            return sb.ToString();
        }