Tengo un proyecto angular y actualmente estoy tratando de establecer valores de formulario reactivos en el método ngOnInit. Obtengo los datos con una llamada http desde un servidor backend. En el método ngOnInit puedo monitorear datos en la consola del navegador; pero las propiedades del objeto de datos siempre están indefinidas a pesar de que los objetos tienen estas propiedades con valores adecuados.
Aquí están los bloques de código interesados:
ngOnInit(): void { this.clientService.getClientBusinessYearDetails(this.clientBusinessYearId).subscribe(data => { console.warn(data); console.warn(data.clientName); this.organizationDetailsFormValues.contactPerson = data?.clientName; this.clientProfileForm.controls.organizaionDetails.setValue(this.organizationDetailsFormValues); }); } Puede ver los detalles en la captura de pantalla de la consola del navegador, el objeto de datos tiene una propiedad clientName adecuada, pero se muestra nulo cuando intento usarlo en otro lugar: 
El formulario en el que quiero establecer su valor es un formulario reactivo que tiene varios grupos de formularios secundarios de componentes internos. He simplificado el método ngOnInit a propósito para leerlo más fácilmente. cuando configuro un control de formulario como codificado, funciona y el valor aparece en el formulario, pero cuando configuro el valor del control como se indica arriba, no aparece porque el valor de la propiedad no está definido.
Alguna idea ? Revisé esta pregunta que es bastante similar, pero mi objetivo no es mostrar el valor de la propiedad en la consola.
data es una matriz, simplemente asigne valores del primer elemento de esta matriz.
ngOnInit(): void { this.clientService.getClientBusinessYearDetails(this.clientBusinessYearId).subscribe(data => { console.warn(data); console.warn(data[0].clientName); this.organizationDetailsFormValues.contactPerson = data[0]?.clientName; this.clientProfileForm.controls.organizaionDetails.setValue(this.organizationDetailsFormValues); }); }