In this paper, the problem of designing a forward link linear precoder for massive multiple-input multiple-output (MIMO) systems in conjunction with quadrature amplitude modulation (QAM) is addressed. A challenge in such system design is to consider finite alphabet inputs, especially with larger constellation sizes, such as $M\geq 16$ . First, we employ a novel and efficient methodology that allows for an orthogonal, sparse representation of multiple users and groups in a fashion similar to joint spatial division and multiplexing (JSDM), thus offering an extension of JSDM to finite alphabet data symbols. We term the new approach JSDM for finite alphabets (JSDM-FA). JSDM-FA employs virtual channel model beams in order to explore the orthogonality between different groups. Then, we present a natural generalization of JSDM-FA to the frequency-selective case with orthogonal frequency-division multiplexing (OFDM) and also enhance OFDM with combined frequency and spatial division and multiplexing. This configuration offers high flexibility in Massive MIMO systems, as it is capable of offering separate decoding of each user data within a group or increase the spectral efficiency of spatially overlapping groups without sacrificing the overall cell spectral efficiency. The proposed methodology is next applied jointly with the complexity-reducing Per-Group Processing within groups technique, on a per user group basis, in conjunction with QAM modulation and in simulations, for constellation size up to $M=64$ . We show by numerical results that the precoders developed offer significantly better performance than the configuration with no precoder or the plain beamformer and with $M\geq 16$ .