Skip to Content
Menu
This question has been flagged
1 Reply
3158 Views

Hello Community,

I have a question as a beginner using Odoo.  Suppose one is making a hospital system model on Odoo , then created a patient model and an appointment model. Now if someone created an appointment from appointment home page it should be a wizard message with info to create an appointment date with the patient's name field manually to be entered, but if someone entered through patient home page, I want the patient name to be filled automatically from the entered patient record to the appointment's patient field. 


I tried with a code like this


class CreateAppointmentWizard(models.TransientModel):

_name = "create.appointment.wizard"
_inherit=["hospital.patient"]
_description = "Appointment Wizard"

name = fields.Char(string='Name', required=True)
patient_id = fields.Many2one('hospital.patient', string="Patient")


def action_create_appointment(self):
if self.env['hospital.patient']: // patient model
self.patient_id = self.env['hospital.patient'].patient_id
else:
self.patient_id = ''


I need a help in this if it is possible


Thank you

Avatar
Discard
Author Best Answer

So for future reference anyone new like me asking the same question.

The answer was using active_id in a get function inside the form.

def default_get(self, fields):

result = super(ClassName, self).default_get(fields)
result['patient_id'] = self._context.get('active_id')
return result

Turns out it was easier than I thought lol.


Best regards;

Hadi Hamad




Avatar
Discard
Related Posts Replies Views Activity
1
Jun 21
2544
1
Dec 19
2633
1
Oct 15
5442
2
Sep 23
3397
1
May 23
1870