El objetivo de usar los BBCODE es que la consulta sea más sencilla de analizar. Por ejemplo:
Código MySQL:
Ver original DP.cantidad,
DP.dias,
DP.precio_unit,
DP.precio_total_ps,
DP.Descrip,
P.fecha_emision,
P.subtotal,
P.iva,
P.total_general_p,
P.fecha_confirmacion,
C.nombre_rs,
C.telefono,
C.fax,
CC.contacto1,
CC.cargo_dpto_c1,
CC.telefono_c1,
DE.fecha_inic,
DE.fecha_fin,
DE.hora_e,
DE.n_personas,
E.nombre_e,
S.nombre_s_a,
M.nombre_mtje,
DP.codigo_salon,
DP.codigo_mtje,
DP.codigo_pto,
DP.codigo_osv,
DP.codigo_hab,
DP.codigo_eq,
DP.codigo_b,
DP.codigo_mt,
DP.codigo_alim
detalle_presupuesto DP
INNER JOIN presupuesto P
ON DP.codigo_pto
= P.codigo_pto
INNER JOIN contactocli CC
ON C.codigo_cte
= CC.codigo_cte
INNER JOIN detalle_evento DE
ON DP.codigo_pto
= DE.codigo_pto
INNER JOIN evento E
ON DE.codigo_evento
= E.codigo_evento
DP.codigo_pto = 32
S.codigo_salon = S1
M.codigo_mtje = M1
Respecto al nombre de los campos usados de FK, la buena práctica dice que siempre tienen que tener el mismo nombre en todas las tablas donde aparezcan, y que debe ser el mismo que en su tabla de origen. Por eso jamás se deben usar nombres demasiado genéricos, como ID, CODIGO o cosas demasiado simples. Es mejor que sean específicos como ID_PRODUCTO, USER_ID, etc.
De ese modo no se prestan a confusiones y simplifican la escritura.
De todos modos, el problema de que no devuelva datos es siempre el mismo:
No hay datos que cumplan las condiciones.
Descríbeme qué es lo que hace esa consulta. Es un listado de presupuesto, ¿de qué forma?, ¿vinculando qué datos?
Si lo explicas con un lenguaje coloquial (y sin imágenes), describiendo las reglas del negocio, posiblemente podamos ver por donde falla el tema.
Lo más probable es que las condiciones estén mal planteadas, relacionado las cosas de modo indebido y con el JOIN incorrecto.