Faits:
Faits:
A. Par jugement du 26 février 2002, le Tribunal pénal économique du canton de Fribourg a condamné X._, pour escroquerie (art. 146 al. 1 et 2 CP), faux dans les titres (art. 251 ch. 1 aCP), instigation à escroquerie (art. 146 al. 1 et 2 en relation avec l'<ref-law>) et instigation à faux dans les titres (art. 251 ch. 1 aCP en relation avec l'<ref-law>), à trois ans d'emprisonnement sous déduction de 260 jours de détention préventive. Le tribunal a aussi statué sur diverses prétentions civiles. Il ressort notamment ce qui suit de ce jugement:
Désireux de se lancer dans la distribution de produits alimentaires, X._ a créé et acquis depuis 1987 diverses sociétés. En vue de regrouper ses participations, il a constitué la société Y._ SA le 5 mars 1990, dont il était l'administrateur et l'unique actionnaire. La société Z._ SA est devenue actionnaire minoritaire de la société Y._ SA en décembre 1990. Le groupe Y._ SA avait comme but principal la distribution pour la restauration et les détaillants en Suisse de produits alimentaires frais, congelés ou en conserves.
Le 7 juin 1993, une plainte pénale a été déposée, notamment par la société Z._ SA. Une expertise a en particulier été confiée à une fiduciaire pour examiner l'activité des responsables des sociétés liées à la société Y._ SA, l'utilisation des fonds mis à disposition de ces sociétés et l'ampleur des pertes cumulées du groupe. Le rapport d'expertise définitif est daté du 23 juin 1999. Le 4 juillet 2001, le juge d'instruction a en particulier prononcé le renvoi devant le Tribunal pénal économique de X._ pour escroquerie et faux dans les titres. Le tribunal a retenu les faits suivants à l'égard de ce dernier:
Dans le cadre d'échanges internes de marchandises (entre les sociétés du groupe), X._ a procédé à des ajustements comptables en vue de compenser des pertes, avec effets sur les exercices 1990 à 1993. Il a procédé à des ajustements dans les comptes trimestriels et annuels des filiales du groupe relatifs aux exercices 1991 à 1993, augmentant artificiellement le chiffre d'affaires de ces sociétés par le biais desdits ajustements. Il introduisait dans la comptabilité des montants correspondant à des ventes fictives que les filiales étaient supposées avoir réalisées auprès de deux sociétés hors groupe, qui étaient sous son contrôle (B._ SA et D._ SA). Ces données étaient étayées par des pièces justificatives qu'il établissait ou faisait établir. Les postes "stock" ne reflétaient pas la réalité pour les comptes 1990 à 1993. Pour le bouclement des comptes 1991, il a modifié les listes d'inventaires des filiales. Dans les comptes trimestriels de septembre et décembre 1992 des sociétés du groupe, il a procédé à la comptabilisation de l'acquisition d'immobilisations inexistantes venant de B._ SA. Il a fait établir sur la base de pièces au contenu inexact de faux bilans pour la société Y._ SA et les filiales, de même que de faux bilans consolidés pour les exercices 1990, 1991 et 1992, dont seuls les deux premiers ont été révisés. La situation arrêtée au 30 avril 1993 a été établie sur la base des écritures fictives que X._ a introduit dans les comptabilités du groupe. Dans le cadre des exercices 1990 à 1993, X._ a ainsi, dès 1991, procédé à la comptabilisation d'écritures fictives à concurrence de quelque 53,9 millions de francs au titre de facturation envers les sociétés B._ SA et D._ SA, ainsi qu'à concurrence de plusieurs millions de francs relativement à d'autres malversations. Ce faisant, il a amélioré les résultats comptables des sociétés du groupe de l'ordre de 9,4 millions de francs sur une période de deux ans et quatre mois. Il a obtenu en faveur de la société Y._ SA et des sociétés du groupe des lignes de crédits bancaires de quelque 30 millions de francs grâce à la présentation de bilans et de comptes qui révélaient des marges bénéficiaires crédibles et des chiffres d'affaires importants. Il savait qu'il jouissait de la confiance des banques, lesquelles le considéraient comme un client important, qui bénéficiait pour la révision de l'ensemble des comptes du groupe de l'appui d'une fiduciaire de qualité et qui avait comme partenaire la société Z._ SA, disposant d'une bonne assise financière. Il savait par ailleurs que les crédits garantis par la cession générale des débiteurs étaient octroyés en blanc et que les comptes falsifiés qu'il faisait parvenir aux banques corroboraient les listes de débiteurs que ces établissements recevaient. Il a convaincu par le même procédé la société Z._ SA, alors actionnaire minoritaire de la holding, de s'engager à hauteur de 7 millions de francs. Il savait que cette partenaire n'avait aucun contrôle sur le détail des comptabilités des filiales. Il a d'ailleurs reconnu avoir trahi les liens de confiance dans le but d'obtenir des liquidités. X._ a également trompé le dénommé F._, qui ignorait la situation financière réelle de D._ SA, pour qu'il investisse dans cette société. F._ ignorait les malversations de X._. Il a consenti à investir en se fiant aux assurances données par X._, en qui il avait confiance, respectivement en croyant que le groupe Y._ SA, pour qui il avait travaillé, était prospère, alors que celui-ci avait subi en 1990 et 1991 des pertes qui avaient été dissimulées. F._ a également obtenu en 1992 des réponses plausibles de la part de X._ au sujet des stocks et pouvait penser que l'organe de révision avait procédé aux contrôles appropriés.
Dans le cadre d'échanges internes de marchandises (entre les sociétés du groupe), X._ a procédé à des ajustements comptables en vue de compenser des pertes, avec effets sur les exercices 1990 à 1993. Il a procédé à des ajustements dans les comptes trimestriels et annuels des filiales du groupe relatifs aux exercices 1991 à 1993, augmentant artificiellement le chiffre d'affaires de ces sociétés par le biais desdits ajustements. Il introduisait dans la comptabilité des montants correspondant à des ventes fictives que les filiales étaient supposées avoir réalisées auprès de deux sociétés hors groupe, qui étaient sous son contrôle (B._ SA et D._ SA). Ces données étaient étayées par des pièces justificatives qu'il établissait ou faisait établir. Les postes "stock" ne reflétaient pas la réalité pour les comptes 1990 à 1993. Pour le bouclement des comptes 1991, il a modifié les listes d'inventaires des filiales. Dans les comptes trimestriels de septembre et décembre 1992 des sociétés du groupe, il a procédé à la comptabilisation de l'acquisition d'immobilisations inexistantes venant de B._ SA. Il a fait établir sur la base de pièces au contenu inexact de faux bilans pour la société Y._ SA et les filiales, de même que de faux bilans consolidés pour les exercices 1990, 1991 et 1992, dont seuls les deux premiers ont été révisés. La situation arrêtée au 30 avril 1993 a été établie sur la base des écritures fictives que X._ a introduit dans les comptabilités du groupe. Dans le cadre des exercices 1990 à 1993, X._ a ainsi, dès 1991, procédé à la comptabilisation d'écritures fictives à concurrence de quelque 53,9 millions de francs au titre de facturation envers les sociétés B._ SA et D._ SA, ainsi qu'à concurrence de plusieurs millions de francs relativement à d'autres malversations. Ce faisant, il a amélioré les résultats comptables des sociétés du groupe de l'ordre de 9,4 millions de francs sur une période de deux ans et quatre mois. Il a obtenu en faveur de la société Y._ SA et des sociétés du groupe des lignes de crédits bancaires de quelque 30 millions de francs grâce à la présentation de bilans et de comptes qui révélaient des marges bénéficiaires crédibles et des chiffres d'affaires importants. Il savait qu'il jouissait de la confiance des banques, lesquelles le considéraient comme un client important, qui bénéficiait pour la révision de l'ensemble des comptes du groupe de l'appui d'une fiduciaire de qualité et qui avait comme partenaire la société Z._ SA, disposant d'une bonne assise financière. Il savait par ailleurs que les crédits garantis par la cession générale des débiteurs étaient octroyés en blanc et que les comptes falsifiés qu'il faisait parvenir aux banques corroboraient les listes de débiteurs que ces établissements recevaient. Il a convaincu par le même procédé la société Z._ SA, alors actionnaire minoritaire de la holding, de s'engager à hauteur de 7 millions de francs. Il savait que cette partenaire n'avait aucun contrôle sur le détail des comptabilités des filiales. Il a d'ailleurs reconnu avoir trahi les liens de confiance dans le but d'obtenir des liquidités. X._ a également trompé le dénommé F._, qui ignorait la situation financière réelle de D._ SA, pour qu'il investisse dans cette société. F._ ignorait les malversations de X._. Il a consenti à investir en se fiant aux assurances données par X._, en qui il avait confiance, respectivement en croyant que le groupe Y._ SA, pour qui il avait travaillé, était prospère, alors que celui-ci avait subi en 1990 et 1991 des pertes qui avaient été dissimulées. F._ a également obtenu en 1992 des réponses plausibles de la part de X._ au sujet des stocks et pouvait penser que l'organe de révision avait procédé aux contrôles appropriés.
B. Par arrêt du 28 avril 2004, la Cour d'appel pénal du Tribunal cantonal fribourgeois a partiellement admis le recours de X._ sur des points touchant à la fixation de la peine. Elle l'a condamné, pour les mêmes infractions que celles prises en compte en première instance, à trente mois d'emprisonnement.
B. Par arrêt du 28 avril 2004, la Cour d'appel pénal du Tribunal cantonal fribourgeois a partiellement admis le recours de X._ sur des points touchant à la fixation de la peine. Elle l'a condamné, pour les mêmes infractions que celles prises en compte en première instance, à trente mois d'emprisonnement.
C. X._ forme un recours de droit public et un pourvoi en nullité au Tribunal fédéral contre cet arrêt. Il conclut à son annulation et sollicite par ailleurs l'effet suspensif.
Par ordonnance du 19 août 2004, le Président de la Cour de cassation pénale du Tribunal fédéral a accordé l'effet suspensif aux recours interjetés.

Le Tribunal fédéral considère en droit:
Le Tribunal fédéral considère en droit:
1. Conformément à l'art. 275 al. 5 PPF, le recours de droit public est examiné en premier lieu.
I. Recours de droit public
I. Recours de droit public
2. 2.1 Le recours de droit public au Tribunal fédéral est ouvert contre une décision cantonale pour violation des droits constitutionnels des citoyens (art. 84 al. 1 let. a OJ). Il n'est en revanche pas ouvert pour se plaindre d'une violation du droit fédéral, qui peut donner lieu à un pourvoi en nullité (art. 269 al. 1 PPF); un tel grief ne peut donc pas être invoqué dans le cadre d'un recours de droit public, qui est subsidiaire (art. 84 al. 2 OJ; art. 269 al. 2 PPF).
2.2 En vertu de l'art. 90 al. 1 let. b OJ, l'acte de recours doit, à peine d'irrecevabilité, contenir un exposé succinct des droits constitutionnels ou des principes juridiques violés et préciser en quoi consiste la violation. Saisi d'un recours de droit public, le Tribunal fédéral n'a donc pas à vérifier de lui-même si la décision attaquée est en tous points conforme au droit ou à l'équité. Il n'examine que les griefs d'ordre constitutionnel invoqués et suffisamment motivés dans l'acte de recours. Le recourant ne saurait se contenter de soulever de vagues griefs ou de renvoyer aux actes cantonaux (<ref-ruling> consid. 1.6 p. 189, 113 consid. 2.1 p. 120; <ref-ruling> consid. 1c p. 76). Le Tribunal fédéral n'entre pas non plus en matière sur les critiques de nature appellatoire (<ref-ruling> consid. 1b p. 495).
2.2 En vertu de l'art. 90 al. 1 let. b OJ, l'acte de recours doit, à peine d'irrecevabilité, contenir un exposé succinct des droits constitutionnels ou des principes juridiques violés et préciser en quoi consiste la violation. Saisi d'un recours de droit public, le Tribunal fédéral n'a donc pas à vérifier de lui-même si la décision attaquée est en tous points conforme au droit ou à l'équité. Il n'examine que les griefs d'ordre constitutionnel invoqués et suffisamment motivés dans l'acte de recours. Le recourant ne saurait se contenter de soulever de vagues griefs ou de renvoyer aux actes cantonaux (<ref-ruling> consid. 1.6 p. 189, 113 consid. 2.1 p. 120; <ref-ruling> consid. 1c p. 76). Le Tribunal fédéral n'entre pas non plus en matière sur les critiques de nature appellatoire (<ref-ruling> consid. 1b p. 495).
3. 3.1 Le recourant se plaint d'une violation du principe de l'accusation. L'ordonnance de renvoi du 4 juillet 2001 mentionnait l'"escroquerie (art. 148 aCP)". Pour lui, cette indication n'englobait pas la qualification d'escroquerie par métier. La circonstance aggravante du métier aurait dû expressément être signalée.
3.2 Composant du droit d'être entendu concrétisé par l'art. 29 al. 2 Cst., le principe de l'accusation implique que le prévenu sache exactement les faits qui lui sont imputés et quelles sont les peines et mesures auxquelles il s'expose, afin qu'il puisse s'expliquer et préparer efficacement sa défense (<ref-ruling> consid. 2a p. 21). Cette garantie peut aussi être déduite des art. 32 al. 2 Cst. et 6 par. 3 CEDH, qui n'ont pas de portée distincte.
Le principe de l'accusation n'empêche pas l'autorité de jugement de s'écarter de l'état de fait ou de la qualification juridique retenus dans la décision de renvoi ou l'acte d'accusation, à condition toutefois que les droits de la défense soient respectés (<ref-ruling> consid. 2a et c p. 21 ss). Si l'accusé est condamné pour une autre infraction que celle visée dans la décision de renvoi ou l'acte d'accusation, il faut examiner s'il pouvait, eu égard à l'ensemble des circonstances d'espèce, s'attendre à cette nouvelle qualification juridique des faits, auquel cas il n'y a pas violation de ses droits de défense (<ref-ruling> consid. 2d/bb p. 24).
Le contenu du droit d'être entendu est déterminé en premier lieu par les dispositions cantonales de procédure, dont le Tribunal fédéral ne contrôle l'application et l'interprétation que sous l'angle de l'arbitraire; dans tous les cas, l'autorité cantonale doit cependant observer les garanties minimales déduites directement de l'art. 29 al. 2 Cst., dont le Tribunal fédéral examine librement le respect (<ref-ruling> consid. 3 p. 194; <ref-ruling> consid. 2a p. 21/22).
En l'espèce, le recourant se réfère aux art. 165 et 178 du Code de procédure pénale fribourgeois (CPP/FR). L'<ref-law>/FR prévoit que la décision de renvoi désigne l'autorité saisie, la personne à juger ainsi que, de manière brève mais complète, les infractions qui lui sont reprochées et les dispositions légales dont l'application paraît entrer en considération. Selon l'<ref-law>/FR, s'il se révèle, au cours des débats, que l'accusé s'est vraisemblablement rendu coupable d'une infraction pour laquelle il n'a pas été renvoyé en jugement, la décision de renvoi doit être modifiée formellement, à moins que l'accusé n'y renonce expressément (al. 1). Il en va de même s'il se révèle que l'infraction tombe sous le coup de dispositions légales plus sévères que celles qui sont mentionnées dans la décision de renvoi (al. 2). Dans tous les cas, l'accusé doit être mis en mesure de se défendre contre la modification intervenue (al. 3). Les dispositions précitées concrétisent, en droit cantonal, les droits garantis par les art. 29 al. 2, 32 al. 2 Cst. et 6 par. 3 CEDH.
3.3 Le Tribunal pénal économique a condamné le recourant pour escroquerie par métier. Il a relevé que l'ordonnance du 4 juillet 2001 renvoyait le recourant en jugement pour "escroquerie (art. 148 aCP)"; que compte tenu de cette formulation générale, tant l'art. 148 al. 1 aCP (escroquerie) que l'art. 148 al. 2 aCP (escroquerie par métier) entraient en ligne de compte; que le titre marginal de cette norme pénale est "escroquerie" et non pas "escroquerie et escroquerie par métier"; qu'il fallait donc s'attendre dans les circonstances d'espèce à ce que la qualification d'escroquerie ou celle d'escroquerie par métier puisse être imputée au recourant; que le même raisonnement valait aussi pour l'<ref-law>, appliqué à la place de l'art. 148 aCP en tant que lex mitior; qu'il n'y avait par conséquent pas lieu de requérir une aggravation de l'accusation en vertu de l'<ref-law>/FR; que cela était conforme à l'art. 6 par. 3 CEDH (cf. jugement de première instance, p. 61/62).
La Cour d'appel a avalisé cette solution. Pourtant, dans une motivation adoptée "par surabondance", elle a noté que le recourant, à l'instar du ministère public, n'avait pas à s'attendre à la qualification d'escroquerie par métier et que, par conséquent, le Tribunal pénal économique, "ne pouvait, sans autre précaution, retenir la circonstance aggravante sur laquelle aucune des parties ne s'était exprimée". Elle a précisé que le recourant avait été jugé pour les faits pour lesquels le renvoi avait été ordonné et que la condamnation prononcée tombait bien sous le coup de la norme pénale (l'art. 148 aCP, respectivement 146 CP) proposée dans sa totalité dans l'ordonnance de renvoi. Elle a ainsi jugé que cette situation ne correspondait pas à celle visée à l'art. 178 al. 1 et 2 CPP/FR. Autrement dit, la Cour d'appel a exclu l'application des deux premiers alinéas de cette norme cantonale parce que l'ordonnance de renvoi se référait de manière générale à l'art. 148 aCP, ce qui englobait à la fois l'escroquerie et l'escroquerie par métier. En revanche, de l'avis de la Cour d'appel, il existait néanmoins un vice, qui consistait dans le fait que le recourant n'avait pas été mis en mesure de se défendre relativement à la circonstance aggravante du métier, alors qu'il aurait dû l'être selon l'<ref-law>/FR, en concrétisation de son droit d'être entendu. Elle a cependant considéré que le recourant avait disposé dans la procédure cantonale de recours de la possibilité de s'exprimer sur l'escroquerie par métier, qu'il en avait concrètement fait usage, que cette problématique ne concernait qu'une question purement juridique pour laquelle elle disposait d'un plein pouvoir d'examen et que, par conséquent, le vice était réparé (cf. arrêt attaqué, p. 20/21).
3.4 Le recourant ne démontre pas que la solution suivie par la Cour d'appel procéderait d'une application arbitraire de l'art. 178 al. 1 et 2 CPP/FR. Les motifs donnés (rappelés ci-dessus) par la Cour d'appel pour soustraire le cas du recourant aux deux premiers alinéas de cette norme cantonale n'apparaissent pas insoutenables.
Le recourant soutient que la Cour d'appel ne pouvait pas réparer la violation de ses droits de défense affectant le jugement de première instance. Il se réfère en particulier à l'arrêt publié aux <ref-ruling> consid. 4 et à un arrêt non publié du 4 mai 1999 (1P.561/1998 consid. 4). Il en ressort en substance qu'une violation du droit d'être entendu peut être réparée dans le cadre d'un recours si la cognition de l'autorité saisie n'est pas plus restreinte que celle qui a statué en première instance, mais qu'une telle réparation du vice est exclue lorsqu'il s'agit d'une violation particulièrement grave des droits des parties et doit rester l'exception.
En l'espèce, l'ordonnance de renvoi du 4 juillet 2001 décrivait avec suffisamment de précisions les faits reprochés au recourant. Assisté d'un avocat, il disposait ainsi d'une information propre à lui permettre d'assurer sa défense par rapport aux faits en question. Il ne le conteste pas. Il savait aussi que la qualification d'escroquerie était envisagée pour ces faits. Le Tribunal pénal économique l'a condamné pour escroquerie par métier. A partir des faits arrêtés, suffisamment énoncés dans l'ordonnance de renvoi, déterminer si le recourant s'est rendu coupable d'escroquerie et si celle-ci est aggravée parce qu'elle a été commise par métier sont de pures questions de droit, qui touchent à l'application de l'<ref-law>. Comme l'a relevé la Cour d'appel, elle disposait elle-même sur ces questions d'un plein pouvoir d'examen. Le recourant a en particulier concrètement contesté devant elle la réalisation de la circonstance aggravante du métier (<ref-law>). Il a donc été en mesure de se défendre. Le vice signalé par la Cour d'appel quant au déroulement de la procédure en première instance n'apparaît pas d'une importance telle qu'il faille le qualifier de rédhibitoire. Il était réparable en instance de recours. Appréciée globalement, la procédure cantonale n'est pas entachée d'une violation des droits de la défense du recourant.
3.5 Au vu de ce qui précède, les critiques du recourant sont infondées. Le recours de droit public doit être rejeté.
II. Pourvoi en nullité
II. Pourvoi en nullité
4. Le Tribunal fédéral examine d'office et librement la recevabilité des recours qui lui sont soumis (<ref-ruling> consid. 1 p. 188; <ref-ruling> consid. 2 p. 139).
Le recourant s'en prend à la qualification d'escroquerie. Il conteste avoir agi astucieusement. Dans son pourvoi, il reprend littéralement l'argumentation qu'il a développée dans son mémoire cantonal de recours aux pages 11 ss. Il se contente d'y ajouter quelques références à l'arrêt attaqué, parallèlement à celles initialement faites au jugement de première instance.
Conformément à l'art. 273 al. 1 let. b PPF, le mémoire de pourvoi doit mentionner les motifs à l'appui des conclusions prises. Il doit succinctement indiquer quelles sont les règles de droit fédéral violées et en quoi consiste cette violation. Pour respecter les exigences minimales de motivation, le recourant doit démontrer concrètement pourquoi, dans le cas d'espèce, le droit fédéral a été violé. Il doit discuter la motivation de la décision rendue en dernière instance cantonale, qui seule peut faire l'objet du pourvoi (cf. art. 268 ch. 1 PPF). Il ne suffit pas d'affirmer que le droit fédéral a été mal appliqué, ni de simplement énumérer des dispositions légales, de citer des passages de doctrine ou encore de soulever des questions (<ref-ruling> consid. 5.1 p. 19).
En l'espèce, la Cour d'appel a soigneusement répondu aux critiques formulées par le recourant devant elle à propos du caractère astucieux des tromperies reprochées. Elle ne s'est pas limitée à se référer et à confirmer la motivation du jugement de première instance. Elle a développé une motivation spécifique, en étoffant largement celle du Tribunal pénal économique. Elle a introduit et discuté de nombreux éléments du dossier et a de la sorte amené de nouveaux éléments d'appréciation. Elle s'est ainsi livrée à une analyse approfondie pour parvenir à la conclusion que les différentes tromperies du recourant étaient astucieuses au sens de l'<ref-law> (cf. arrêt attaqué, p. 11 à 18).
Pour respecter les exigences de motivation du pourvoi, le recourant aurait dû discuter spécifiquement des développements de la Cour d'appel et dire en quoi celle-ci avait violé le droit fédéral. Il n'en a rien fait puisqu'il s'est borné à reproduire les critiques qu'il avait déjà soulevées devant la Cour d'appel. Ce procédé aurait le cas échéant pu suffire si la Cour d'appel s'en était tenue à retranscrire le raisonnement du Tribunal pénal économique. Cela n'étant nullement le cas, les conditions posées par l'art. 273 al. 1 let. b PPF ne sont en l'espèce pas respectées. Les contestations du recourant à propos de l'astuce sont ainsi irrecevables.
Pour respecter les exigences de motivation du pourvoi, le recourant aurait dû discuter spécifiquement des développements de la Cour d'appel et dire en quoi celle-ci avait violé le droit fédéral. Il n'en a rien fait puisqu'il s'est borné à reproduire les critiques qu'il avait déjà soulevées devant la Cour d'appel. Ce procédé aurait le cas échéant pu suffire si la Cour d'appel s'en était tenue à retranscrire le raisonnement du Tribunal pénal économique. Cela n'étant nullement le cas, les conditions posées par l'art. 273 al. 1 let. b PPF ne sont en l'espèce pas respectées. Les contestations du recourant à propos de l'astuce sont ainsi irrecevables.
5. Le recourant s'en prend à la circonstance aggravante du métier. Là aussi, il se borne à reproduire la même motivation qu'il a présentée dans son mémoire cantonal de recours (p. 29 ss). Il ne fait aucun cas de la motivation de la Cour d'appel (cf. arrêt attaqué, p. 21/22). Pour les mêmes raisons que celles indiquées ci-dessus (consid. 4), le grief est irrecevable.
5. Le recourant s'en prend à la circonstance aggravante du métier. Là aussi, il se borne à reproduire la même motivation qu'il a présentée dans son mémoire cantonal de recours (p. 29 ss). Il ne fait aucun cas de la motivation de la Cour d'appel (cf. arrêt attaqué, p. 21/22). Pour les mêmes raisons que celles indiquées ci-dessus (consid. 4), le grief est irrecevable.
6. Le recourant n'a présenté aucun grief recevable. Son pourvoi est par conséquent irrecevable.
III. Frais et indemnité
III. Frais et indemnité
7. Le recourant, qui succombe, supporte les frais de la procédure devant le Tribunal fédéral, lesquels sont fixés de manière à prendre en compte les deux recours interjetés (art. 156 al. 1 OJ et 278 al. 1 PPF).
Il n'y a pas lieu d'allouer d'indemnité à l'intimée, qui n'a pas eu à intervenir dans la procédure devant le Tribunal fédéral.

Par ces motifs, le Tribunal fédéral prononce:
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours de droit public est rejeté.
1. Le recours de droit public est rejeté.
2. Le pourvoi en nullité est irrecevable.
2. Le pourvoi en nullité est irrecevable.
3. Un émolument judiciaire de 4'000 francs est mis à la charge du recourant.
3. Un émolument judiciaire de 4'000 francs est mis à la charge du recourant.
4. Le présent arrêt est communiqué en copie aux mandataires des parties, au Ministère public du canton de Fribourg et à la Cour d'appel pénal du Tribunal cantonal fribourgeois.
Lausanne, le 20 septembre 2004
Au nom de la Cour de cassation pénale
du Tribunal fédéral suisse
Le président: Le greffier: