У меня есть следующий смарт-контракт и некоторые функции, в функцию «setBets» я вызвал другую функцию с именем: «transfer (_to, _value);» где я хочу отправить некоторые токены на другой адрес, но всегда получаю ошибку «Предупреждение! Произошла ошибка при выполнении контракта [отменено]»
не могу ли я отправить токены из другой функции? эта функция .transfer находится в другом смарт-контракте: bettorSmartContract
import './bettorSmartContract.sol';
contract Bets is Owner {. . .
function setBets(address _to, uint256 _value, string _idBet, string _idMatch, string _betForWinner, uint _stakeToken, string _odds, uint _totalToken, uint16 _typeCoin, string _betDate, address _accountAddress)public {
require (keccak256(abi.encodePacked((betsId[_idBet].idBet))) != keccak256(abi.encodePacked((_idBet))) );
transfer(_to, _value);
Countries countr= Countries(0x1c2A4B624368b0FE8A9dD36DeFa17fBf6096323b);
bets[msg.sender].idBet= _idBet;
bets[msg.sender].user= msg.sender;
betsId[_idBet].idBet= _idBet;
betsId[_idBet].user= msg.sender;
betsIdMatch[_idBet].idBet= _idBet;
betsIdMatch[_idBet].idMatch=_idMatch;
everyID.push(_idBet);
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].idBet=_idBet;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].idMatch=_idMatch;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].betForWinner=_betForWinner;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].codCountryBetForWinner= bytes32ToString(countr.getCountryIdCod(_betForWinner));
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].stakeToken= _stakeToken;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].priceToken= "0";
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].priceETH= "0";
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].odds= _odds;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].totalToken = _totalToken;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].payoutEth= 0;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].typeCoin = _typeCoin ;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].betDate= _betDate;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].status= "PENDING";
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].user= msg.sender;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].accountAddress = _accountAddress;
betsByIdSenderMatch[_idBet][_idMatch][msg.sender].index= (everyID.length-1) ;
setArrays(_idBet,_idMatch );
}
function transfer(address _to, uint256 _value)public {
bettorSmartContract bettor = bettorSmartContract(0x8C17FAD2966cAEa80C5EcB8c319b0198AFCc7662);
bettor.transfer(_to, _value);
}
. . .
}